次の方法で共有


WSAGetServiceClassInfoA 関数 (winsock2.h)

WSAGetServiceClassInfo 関数は、指定した名前空間プロバイダーから、指定したサービス クラスに関連するクラス情報 (スキーマ) を取得します。

構文

INT WSAAPI WSAGetServiceClassInfoA(
  [in]      LPGUID                 lpProviderId,
  [in]      LPGUID                 lpServiceClassId,
  [in, out] LPDWORD                lpdwBufSize,
  [out]     LPWSASERVICECLASSINFOA lpServiceClassInfo
);

パラメーター

[in] lpProviderId

特定の名前空間プロバイダーを識別する GUID へのポインター。

[in] lpServiceClassId

サービス クラスを識別する GUID へのポインター。

[in, out] lpdwBufSize

入力時に、lpServiceClassInfo パラメーターによって指されるバッファーに含まれるバイト数。

出力時に、関数が失敗し、エラーが WSAEFAULT場合、このパラメーターは、レコードを取得するために必要な lpServiceClassInfo 指すバッファーの最小サイズ (バイト単位) を指定

[out] lpServiceClassInfo

指定したサービス クラスの指定された名前空間プロバイダーからのサービス クラス情報を含む WSASERVICECLASSINFO 構造体へのポインター。

戻り値

WSAGetServiceClassInfo が成功した場合、戻り値は 0 になります。 それ以外の場合は、SOCKET_ERROR値が返され、WSAGetLastError呼び出すことによって特定のエラー番号を取得できます。

エラー コード 意味
WSA_NOT_ENOUGH_MEMORY
操作を実行するためのメモリが不足していました。
WSAEACCES の
呼び出し元ルーチンには、情報にアクセスするための十分な特権がありません。
WSAEFAULT の
lpServiceClassInfo パラメーターが指すバッファーが小さすぎて WSASERVICECLASSINFOW を含められません。 アプリケーションは、より大きなバッファーを渡す必要があります。
WSAEINVAL の
指定されたサービス クラス識別子または名前空間プロバイダー識別子が無効です。 このエラーは、lpProviderId、lpServiceClassId、lpdwBufSize、または lpServiceClassInfo パラメーター が NULL場合に返されます。
WSAEOPNOTSUPP の
この操作は、参照されるオブジェクトの種類ではサポートされていません。 このエラーは、サービス クラス情報の取得をサポートしていない一部の名前空間プロバイダーによって返されます。
WSANO_DATA
要求された名前は有効ですが、要求された型のデータが見つかりませんでした。
WSANOTINITIALIZED の
WS2_32.DLLが初期化されていません。 アプリケーションは、Windows ソケット関数を呼び出す前 WSAStartup を最初に呼び出す必要があります。
WSATYPE_NOT_FOUND
指定したクラスが見つかりませんでした。

備考

WSAGetServiceClassInfo 関数は、名前空間プロバイダーからサービス クラス情報を取得します。 特定の名前空間プロバイダーから取得されたサービス クラス情報は、サービス クラスのインストール時に指定されたクラス情報の完全なセットではない可能性があります。 個々の名前空間プロバイダーは、サポートされている名前空間に適用可能なサービス クラス情報のみを保持する必要があります。 詳細については、「サービス クラス のデータ構造 セクション」を参照してください。

手記

winsock2.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして WSAGetServiceClassInfo を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winsock2.h
ライブラリ Ws2_32.lib
DLL Ws2_32.dll

関連項目

サービス クラスのデータ構造

WSAInstallServiceClass の

WSASERVICECLASSINFOW の

WSAStartup の

Winsock Functions

Winsock リファレンス