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 ハンドルの場合、InternetQueryDataAvailable を使用する前に、ハンドルで HttpEndRequest の呼び出しを行う必要があります。

WinINet API の他のすべての側面と同様に、この関数を DllMain またはグローバル オブジェクトのコンストラクターとデストラクター内から安全に呼び出すことはできません。

メモ WinINet では、サーバーの実装はサポートされていません。 また、サービスから使用しないでください。 サーバーの実装またはサービスの場合は、 Microsoft Windows HTTP サービス (WinHTTP) を使用します。
 

要件

要件 値
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wininet.h
Library Wininet.lib
[DLL] Wininet.dll

こちらもご覧ください

共通関数

WinINet 関数