InternetQueryDataAvailable 函式 (wininet.h)
查詢伺服器以判斷可用的數據量。
語法
BOOL InternetQueryDataAvailable(
[in] HINTERNET hFile,
[out] LPDWORD lpdwNumberOfBytesAvailable,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
參數
[in] hFile
InternetOpenUrl、FtpOpenFile、GopherOpenFile 或 HttpOpenRequest 函式所傳回的句柄。
[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 |
程式庫 | Wininet.lib |
Dll | Wininet.dll |