WinHttpSetCredentials 関数は、必要な認証資格情報をサーバーに渡す。
WinHttpSetCredentials hRequest, AuthTargets, AuthScheme, pwszUserName, pwszPassword, pAuthParams
hRequest : [intptr] WinHttpOpenRequest から返される有効な HINTERNET ハンドル。 AuthTargets : [int] 認証ターゲットを含むフラグを指定する unsigned int。次の表の値のいずれかを指定できる。 AuthScheme : [int] 認証スキームを含むフラグを指定する unsigned int。WinHttpQueryAuthSchemes から返されるサポートされている認証スキームのいずれかでなければならない。次の表は指定可能な値を示す。 pwszUserName : [wstr] 有効なユーザー名を含む文字列へのポインタ。 pwszPassword : [wstr] 有効なパスワードを含む文字列へのポインタ。パスワードは空でもよい。 pAuthParams : [intptr] このパラメータは予約済みで、NULL でなければならない。
(プラグイン / モジュール : winhttp.dll)
WinHttpSetCredentials 関数は、必要な認証資格情報をサーバーに渡す。 [戻り値] 成功した場合は TRUE を、失敗した場合は FALSE を返す。拡張エラー情報は GetLastError で取得する。次の表は返されるエラーコードを示す。 (以下省略) [備考] WinHTTP が非同期モード (WinHttpOpen で WINHTTP_FLAG_ASYNC が設定されている状態) で使われる場合でも、この関数は同期的に動作する。戻り値は成功または失敗を示す。拡張エラー情報は GetLastError で取得する。WinHttpSetCredentials で設定された資格情報は 1 回のリクエストでのみ使用され、WinHTTP は後続のリクエストのためにキャッシュしない。そのためアプリケーションは複数の認証要求に応答できるように書かれていなければならない。認証済みの接続が再利用される場合、後続のリクエストに対して認証要求は行われないかもしれないが、コードはいつでも認証要求に応答できるようにしておく必要がある。WinHttpSetCredentials の使用例は Authentication in WinHTTP を参照。注: Passport 認証を使って 407 ステータスコードに応答する場合、WinHTTP アプリケーションは WinHttpSetCredentials ではなく WinHttpSetOption を使ってプロキシ資格情報を提供しなければならない。これは Passport 認証を使う場合のみ当てはまる。それ以外の場合は WinHttpSetOption はセキュリティが低いため WinHttpSetCredentials を使うこと。注: 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 |