指定したトランスポートプロバイダをシステム構成データベース内で変更する。
WSCUpdateProvider lpProviderId, lpszProviderDllPath, lpProtocolInfoList, dwNumberOfEntries, lpErrno
lpProviderId : [var] プロバイダの GUID へのポインタ。 lpszProviderDllPath : [wstr] プロバイダの 64 ビット DLL へのロードパスを含む Unicode 文字列へのポインタ。通常のパス解決規則に従い、%SystemRoot% などの埋め込み環境変数文字列を含めてよい。埋め込み環境変数文字列は、Ws2_32.dll がアプリケーションのためにプロバイダ DLL をロードするときに展開される。展開後、Ws2_32.dll は結果の文字列を LoadLibrary に渡してプロバイダをメモリにロードする。詳しくは **LoadLibrary** を参照。 lpProtocolInfoList : [var] WSAProtocol_Info 構造体の配列へのポインタ。各構造体は、プロバイダがサポートするプロトコル、アドレスファミリ、ソケット種別を指定または変更する。 dwNumberOfEntries : [int] lpProtocolInfoList 配列のエントリ数。 lpErrno : [var] 関数が失敗した場合のエラーコードへのポインタ。
(プラグイン / モジュール : ws2_32.dll)
指定したトランスポートプロバイダをシステム構成データベース内で変更する。 [戻り値] エラーがない場合、**WSCUpdateProvider** はゼロを返す。そうでない場合は **SOCKET_ERROR** を返し、lpErrno に特定のエラーコードが格納される。 このドキュメントは省略されている。 [備考] **WSCUpdateProvider** 関数は、指定されたプロバイダの Winsock 2 構成情報を変更する。ベースプロトコル、レイヤードプロトコル、プロトコルチェーンに適用できる。Winsock 2 はレイヤードプロトコルに対応する (以下、他 LSP 関数と同様の説明)。成功した場合、**WSCUpdateProvider** は変更通知を登録した関心を持つアプリケーションに対し WSAProviderConfigChange 経由で通知を試みる。**WSCUpdateProvider** は Administrators グループのメンバとしてログオンしているユーザーのみが呼び出せる。そうでない場合は失敗する。 Windows Vista や Windows Server 2008 では UAC が原因で失敗することもある。マニフェストで **requireAdministrator** を設定していない場合、組み込み Administrator 以外の Administrators メンバは RunAs administrator で実行する必要がある。ファイルのインストールやサービスプロバイダ固有の構成は呼び出し元が行う。
| プラグイン / モジュール | ws2_32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の ws2_32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_ws2_32_gen2.hs |