HTTP トランザクションに関わるタイムアウトを設定する。
WinHttpSetTimeouts hInternet, nResolveTimeout, nConnectTimeout, nSendTimeout, nReceiveTimeout
hInternet : [intptr] WinHttpOpen または WinHttpOpenRequest から返される HINTERNET ハンドル。 nResolveTimeout : [int] 名前解決に使うタイムアウト値 (ミリ秒単位) を指定する整数型の値。解決がこのタイムアウト値より長くかかった場合、処理はキャンセルされる。初期値は 0 で、タイムアウトしない (無限) ことを意味する。Windows Vista および Windows XP: NAME_RESOLUTION_TIMEOUT で DNS タイムアウトを指定すると、リクエストごとに 1 スレッドのオーバーヘッドが発生する。 nConnectTimeout : [int] サーバー接続要求に使うタイムアウト値 (ミリ秒単位) を指定する整数型の値。接続要求がこのタイムアウト値より長くかかった場合、リクエストはキャンセルされる。初期値は 60,000 (60 秒)。TCP/IP は、このパラメータの値に関わらず、3 段階の SYN/ACK 交換中のソケットセットアップ時にタイムアウトすることがある。 nSendTimeout : [int] リクエストの送信に使うタイムアウト値 (ミリ秒単位) を指定する整数型の値。リクエスト送信がこのタイムアウト値より長くかかった場合、送信はキャンセルされる。初期値は 30,000 (30 秒)。 nReceiveTimeout : [int] リクエストに対するレスポンス受信に使うタイムアウト値 (ミリ秒単位) を指定する整数型の値。レスポンスがこのタイムアウト値より長くかかった場合、リクエストはキャンセルされる。初期値は 30,000 (30 秒)。
(プラグイン / モジュール : winhttp.dll)
HTTP トランザクションに関わるタイムアウトを設定する。 [戻り値] 成功した場合は TRUE を、失敗した場合は FALSE を返す。拡張エラー情報は GetLastError で取得する。返されるエラーコードには次のものがある。 (以下省略) [備考] WinHTTP が非同期モード (WinHttpOpen で WINHTTP_FLAG_ASYNC が設定されている状態) で使われる場合でも、この関数は同期的に動作する。戻り値は成功または失敗を示す。拡張エラー情報は GetLastError で取得する。0 または -1 の値は、タイムアウトを無期限待機に設定する。0 より大きい値はタイムアウト値をミリ秒単位で設定する。たとえば 30,000 はタイムアウトを 30 秒に設定する。-1 以外の負の値はすべて関数を ERROR_INVALID_PARAMETER で失敗させる。重要: WinHttpSetOption と WINHTTP_OPTION_RECEIVE_TIMEOUT を使って小さなタイムアウトを設定すると、dwReceiveTimeout パラメータで設定した値を上書きしてしまい、レスポンスが想定より早く終了することがある。これを避けるには、WINHTTP_OPTION_RECEIVE_TIMEOUT オプションで dwReceiveTimeout より小さな値を設定しないこと。注: Windows XP および Windows 2000 については WinHTTP の開始ページの Run-Time Requirements セクションを参照。
| プラグイン / モジュール | winhttp.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の winhttp.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_winhttp_gen2.hs |