WinHttpQueryHeaders

HTTP リクエストに関連するヘッダ情報を取得する。

WinHttpQueryHeaders hRequest, dwInfoLevel, pwszName, lpBuffer, lpdwBufferLength, lpdwIndex

hRequest : [intptr] WinHttpOpenRequest が返した HINTERNET リクエストハンドル。WinHttpReceiveResponse を完了させておく必要がある。
dwInfoLevel : [int] 属性フラグと修飾フラグの組み合わせ。Query Info Flags を参照。
pwszName : [wstr] ヘッダ名を含む文字列へのポインタ。dwInfoLevel のフラグが WINHTTP_QUERY_CUSTOM でない場合は WINHTTP_HEADER_NAME_BY_INDEX を指定する。
lpBuffer : [intptr] 情報を受け取るバッファへのポインタ。WINHTTP_NO_OUTPUT_BUFFER を指定すると関数は FALSE を返し、GetLastError は ERROR_INSUFFICIENT_BUFFER を返して lpdwBufferLength に必要バイト数を格納する。
lpdwBufferLength : [var] データバッファ長を保持する DWORD へのポインタ。復帰後はバッファに書き込まれた情報のサイズを受け取る。文字列を返す場合のルールは以下の通り。
lpdwIndex : [var] 同名の複数ヘッダを列挙するための 0 始まりのヘッダインデックス。呼び出し時は返したいヘッダのインデックス、復帰時は次のヘッダのインデックスを受け取る。WINHTTP_NO_HEADER_INDEX を指定すると最初の出現のみ返す。

(プラグイン / モジュール : winhttp.dll)

解説

HTTP リクエストに関連するヘッダ情報を取得する。

[戻り値]
成功時は TRUE、失敗時は FALSE。拡張エラー情報は GetLastError で取得する。主なエラーコードは以下の通り。
(以下省略)

[備考]
非同期モードでも本関数は同期動作する。既定では文字列を返すが、dwInfoLevel に修飾フラグを付けて SYSTEMTIME や
DWORD として取得することもできる。返せるデータ型と対応フラグは以下の通り。
(以下省略)

情報

プラグイン / モジュールwinhttp.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の winhttp.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_winhttp_gen2.hs