Layered Service Provider (LSP) の情報クラスに関連付けられたデータを取得する。
WSCGetProviderInfo lpProviderId, InfoType, Info, InfoSize, Flags, lpErrno
lpProviderId : [var] プロバイダの GUID へのポインタ。 InfoType : [int] この LSP プロトコルエントリに対して要求する情報クラス。 Info : [var] 要求された LSP プロトコルエントリの情報クラスデータを受け取るバッファへのポインタ。**NULL** の場合、**WSCGetProviderInfo** は失敗し、必要バッファサイズが InfoSize で返される。 InfoSize : [var] Info が指すバッファのサイズ (バイト単位)。Info が **NULL** なら **WSCGetProviderInfo** は失敗し、InfoSize に必要なサイズが返される。 Flags : [int] **WSCGetProviderInfo** 呼び出しの動作を変更するフラグ。 lpErrno : [var] 関数が失敗した場合のエラーコードへのポインタ。
(プラグイン / モジュール : ws2_32.dll)
Layered Service Provider (LSP) の情報クラスに関連付けられたデータを取得する。 [戻り値] エラーがない場合、**WSCGetProviderInfo** は **ERROR_SUCCESS** (0) を返す。そうでない場合は **SOCKET_ERROR** を返し、lpErrno に特定のエラーコードが格納される。 このドキュメントは省略されている。 [備考] **WSCGetProviderInfo** は、Layered Service Provider の情報クラスデータを取得するために使う。InfoType に **ProviderInfoLspCategories** を指定した場合、成功時に **WSCGetProviderInfo** は LSP が実装する適切な LSP カテゴリフラグを Info に設定して返す。Winsock 2 はレイヤードプロトコルに対応する。レイヤードプロトコルは高レベル通信機能のみを実装し、下位トランスポートスタックに実データ交換を依存する。認証と暗号化合意のためにプロトコルを追加するセキュリティ層が例で、このようなプロトコルは TCP や SPX 等を必要とする。ベースプロトコルは単独で通信可能なプロトコル、レイヤードプロトコルは単独では使えないプロトコルである。プロトコルチェーンは 1 つ以上のレイヤードプロトコルをベースプロトコルで終端したものである。WSAProtocol_Info 構造体の **ChainLen** が **BASE_PROTOCOL** (1) ならベース、**LAYERED_PROTOCOL** (0) ならレイヤード、1 より大きければチェーンである。LSP 初期化時、LSP は Winsock SPI 関数のポインタを提供しなければならない。IFS LSP は自前実装か直下層のポインタをそのまま返すかを選択できる。非 IFS LSP は独自ハンドルを持つため全 SPI を実装する必要がある。LSP は SPI の部分集合に追加処理を行う。これを基に LSP カテゴリが定義される。Windows Vista 以降では Winsock 呼び出しとデータへの作用方法で分類される。LSP カテゴリは SPI 部分集合上の識別可能な挙動群で、例えば HTTP コンテンツフィルタは LSP_INSPECTOR に分類される。LSP_INSPECTOR はデータ転送 SPI 関数の引数を検査するが変更しない。アプリケーションは LSP のカテゴリを問い合わせ、許可カテゴリに基づきロードしない選択ができる。 このドキュメントは省略されている。
| プラグイン / モジュール | 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 |