Fonction InternetQueryDataAvailable (wininet.h)

Interroge le serveur pour déterminer la quantité de données disponible.

Syntaxe

BOOL InternetQueryDataAvailable(
  [in]  HINTERNET hFile,
  [out] LPDWORD   lpdwNumberOfBytesAvailable,
  [in]  DWORD     dwFlags,
  [in]  DWORD_PTR dwContext
);

Paramètres

[in] hFile

Handle retourné par la fonction InternetOpenUrl, FtpOpenFile, GopherOpenFile ou HttpOpenRequest .

[out] lpdwNumberOfBytesAvailable

Pointeur vers une variable qui reçoit le nombre d’octets disponibles. Peut être NULL.

[in] dwFlags

Ce paramètre est réservé et doit être 0.

[in] dwContext

Ce paramètre est réservé et doit être 0.

Valeur retournée

Retourne TRUE si la fonction réussit, ou FALSE dans le cas contraire. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError. Si la fonction ne trouve aucun fichier correspondant, GetLastError retourne ERROR_NO_MORE_FILES.

Remarques

Cette fonction retourne le nombre d’octets de données disponibles pour être lues immédiatement par un appel suivant à InternetReadFile. S’il n’existe actuellement aucune donnée disponible et que la fin du fichier n’a pas été atteinte, la demande attend que les données soient disponibles. La quantité de données restantes n’est pas recalculée tant que toutes les données disponibles indiquées par l’appel à InternetQueryDataAvailable n’ont pas été lues.

Pour les handles HINTERNET créés par HttpOpenRequest et envoyés par HttpSendRequestEx, un appel à HttpEndRequest doit être effectué sur le handle avant qu’InternetQueryDataAvailable puisse être utilisé.

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

Fonctions WinINet