InternetQueryDataAvailable 函数 (wininet.h)

查询服务器以确定可用数据量。

语法

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

参数

[in] hFile

InternetOpenUrlFtpOpenFileGopherOpenFileHttpOpenRequest 函数返回的句柄。

[out] lpdwNumberOfBytesAvailable

指向接收可用字节数的变量的指针。 可能为 NULL

[in] dwFlags

此参数是保留的,必须为 0。

[in] dwContext

此参数是保留的,必须为 0。

返回值

如果函数成功,则返回 TRUE ;否则返回 FALSE 。 要获得更多的错误信息,请调用 GetLastError。 如果函数找不到匹配的文件, GetLastError 将返回ERROR_NO_MORE_FILES。

注解

此函数返回可供后续调用 InternetReadFile 立即读取的数据字节数。 如果当前没有可用数据,并且文件末尾尚未到达,则请求将等待数据可用。 在读取对 InternetQueryDataAvailable 的调用指示的所有可用数据之前,不会重新计算剩余的数据量。

对于由 HttpOpenRequest 创建并由 HttpSendRequestEx 发送的 HINTERNET 句柄,必须先在句柄上调用 HttpEndRequest,然后才能使用 InternetQueryDataAvailable

与 WinINet API 的所有其他方面一样,无法从 DllMain 或全局对象的构造函数和析构函数中安全地调用此函数。

注意 WinINet 不支持服务器实现。 此外,不应从服务使用它。 对于服务器实现或服务,请使用 Microsoft Windows HTTP Services (WinHTTP)
 

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 wininet.h
Library Wininet.lib
DLL Wininet.dll

另请参阅

常用函数

WinINet 函数