WSCUpdateProvider

指定したトランスポートプロバイダをシステム構成データベース内で変更する。

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
URLhttps://github.com/inovia/IronHSP
備考Win32 API の ws2_32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_ws2_32_gen2.hs