Partager via


InternetSetStatusCallbackA, fonction (wininet.h)

La fonction InternetSetStatusCallback configure une fonction de rappel que les fonctions WinINet peuvent appeler à mesure que la progression est effectuée pendant une opération.

Syntaxe

INTERNET_STATUS_CALLBACK InternetSetStatusCallbackA(
  HINTERNET                hInternet,
  INTERNET_STATUS_CALLBACK lpfnInternetCallback
);

Paramètres

hInternet

Handle pour lequel le rappel est défini.

lpfnInternetCallback

Pointeur vers la fonction de rappel à appeler lorsque la progression est effectuée, ou NULL pour supprimer la fonction de rappel existante. Pour plus d’informations sur la fonction de rappel, consultez InternetStatusCallback.

Valeur de retour

Retourne la fonction de rappel d’état précédemment définie si elle réussit, null si aucune fonction de rappel d’état précédemment définie n’a été définie, ou INTERNET_INVALID_STATUS_CALLBACK si la fonction de rappel n’est pas valide.

Remarques

Les fonctions synchrones et asynchrones utilisent la fonction de rappel pour indiquer la progression de la requête, comme la résolution d’un nom, la connexion à un serveur, etc. La fonction de rappel est requise pour une opération asynchrone. La requête asynchrone rappelle l’application avec INTERNET_STATUS_REQUEST_COMPLETE pour indiquer que la demande a été terminée.

Une fonction de rappel peut être définie sur n’importe quel handle et est héritée par des handles dérivés. Une fonction de rappel peut être modifiée à l’aide de InternetSetStatusCallback, ce qui indique qu’il n’existe aucune demande en attente qui doit utiliser la valeur de rappel précédente. Notez toutefois que la modification de la fonction de rappel sur un handle ne modifie pas les rappels sur les handles dérivés, tels que ceux retournés par InternetConnect. Vous devez modifier la fonction de rappel à chaque niveau.

La plupart des fonctions WinINet effectuent plusieurs opérations sur le réseau. Chaque opération peut prendre du temps et chaque opération peut échouer.

Il est parfois souhaitable d’afficher les informations d’état pendant une opération à long terme. Vous pouvez afficher des informations d’état en configurant une fonction de rappel d’état Internet qui ne peut pas être supprimée tant que les rappels ou toutes les fonctions asynchrones sont en attente.

Après avoir lancé InternetSetStatusCallback, la fonction de rappel est accessible à partir de n’importe quelle fonction WinINet pour surveiller les opérations réseau nécessitant beaucoup de temps.

Remarque La fonction de rappel spécifiée dans le paramètre lpfnInternetCallback ne sera pas appelée sur les opérations asynchrones du handle de requête lorsque le paramètre dwContext de de HttpOpenRequest est défini sur zéro (INTERNET_NO_CALLBACK), ou le handle de connexion lorsque le handle de connexion dwContext de InternetConnect est défini sur zéro (INTERNET_NO_CALLBACK).

Comme tous les autres aspects de l’API WinINet, cette fonction ne peut pas être appelée en toute sécurité à partir de DllMain ou des constructeurs et destructeurs d’objets globaux.

Remarque WinINet ne prend pas en charge les implémentations de serveur. En outre, il ne doit pas être utilisé à partir d’un service. Pour les implémentations de serveur ou les services, utilisez Microsoft Windows HTTP Services (WinHTTP).
 

Note

L’en-tête wininet.h définit InternetSetStatusCallback comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
d’en-tête wininet.h

Voir aussi

fonctions courantes

internetStatusCallback

fonctions WinINet