Fonction InternetSetStatusCallback (wininet.h)

La fonction InternetSetStatusCallback configure une fonction de rappel que les fonctions WinINet peuvent appeler au fur et à mesure de la progression d’une opération.

Syntaxe

INTERNET_STATUS_CALLBACK InternetSetStatusCallback(
  [in] HINTERNET                hInternet,
  [in] INTERNET_STATUS_CALLBACK lpfnInternetCallback
);

Paramètres

[in] hInternet

Handle pour lequel le rappel est défini.

[in] 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 retournée

Retourne la fonction de rappel status précédemment définie en cas de réussite, NULL si aucune fonction de rappel n’a été définie précédemment status 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 demande, 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é effectué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 d’InternetSetStatusCallback, à condition qu’aucune demande en attente n’ait besoin d’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 chacune peut échouer.

Il est parfois souhaitable d’afficher des informations status au cours d’une opération à long terme. Vous pouvez afficher status informations en configurant une fonction de rappel internet status qui ne peut pas être supprimée tant que des rappels ou des 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.

Note La fonction de rappel spécifiée dans le paramètre lpfnInternetCallback n’est pas appelée sur les opérations asynchrones pour le handle de requête lorsque le paramètre dwContext de HttpOpenRequest est défini sur zéro (INTERNET_NO_CALLBACK) ou le handle de connexion lorsque le handle dwContext dwContext d’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.

Note 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).
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête wininet.h
Bibliothèque Wininet.lib
DLL Wininet.dll

Voir aussi

Fonctions courantes

InternetStatusCallback

Fonctions WinINet