Win32 API 日本語リファレンス
ホーム › Networking.WinSock › LPNSPV2CLIENTSESSIONRUNDOWN

LPNSPV2CLIENTSESSIONRUNDOWN

コールバック

シグネチャ

void LPNSPV2CLIENTSESSIONRUNDOWN(
    GUID* lpProviderId,
    void* pvClientSessionArg
);

パラメーター

フィールド型説明
lpProviderIdGUID*通知先となる特定の名前空間プロバイダーの GUID へのポインターです。
pvClientSessionArgvoid*終了するクライアントセッションへのポインターです。

公式ドキュメント

NSPv2ClientSessionRundown 関数は、名前空間サービスプロバイダーバージョン 2 (NSPv2) プロバイダーに対して、クライアントセッションが終了することを通知します。

戻り値

ルーチンが成功した場合、この関数は NO_ERROR (ゼロ) を返します。ルーチンが失敗した場合は SOCKET_ERROR (すなわち 1) を返し、 WSASetLastError を使用して適切なエラーコードを設定する必要があります。

エラーコード 意味
WSA_NOT_ENOUGH_MEMORY
この操作を実行するために十分なメモリがありません。
WSAEACCES
呼び出し元のルーチンには、サービスをインストールするための十分な特権がありません。
WSAEINVAL
このプロバイダーに対して、1 つ以上のパラメーターが無効であるか、指定されていません。
WSAEOPNOTSUPP
この操作はサポートされていません。このエラーは、名前空間プロバイダーがこの関数を実装していない場合に返されます。また、指定された dwControlCode が認識できないコマンドである場合にも返されることがあります。
WSASERVICE_NOT_FOUND
サービスが不明です。指定された名前空間でサービスが見つかりません。

解説(Remarks)

NSPv2ClientSessionRundown 関数は、Windows Vista 以降で利用できる名前空間サービスプロバイダーバージョン 2 (NSPv2) アーキテクチャの一部として使用されます。

Windows Vista および Windows Server 2008 では、NSPv2ClientSessionRundown 関数は NS_EMAIL 名前空間プロバイダーに対する操作にのみ使用できます。

NSPv2Startup 関数は、新しいクライアントプロセスが名前空間プロバイダーの使用を開始するたびに呼び出されます。 プロバイダーは、ppvClientSessionArg パラメーターが指すクライアントセッション引数を使用して、このセッションに関する情報を格納できます。NSPv2Startup 関数の呼び出しでクライアントセッション引数に値が指定されていた場合、これと同じクライアントセッション引数が NSPv2ClientSessionRundown 関数の pvClientSessionArg パラメーターに渡されます。

NSPv2Startup、NSPv2ClientSessionRundown、および NSPv2Cleanup の各関数は省略可能であり、NSPv2 プロバイダーの要件に応じて実装します。

NSPv2ClientSessionRundown 関数を実装しない場合、この関数への呼び出しは、WSAEOPNOTSUPP を返すスタブ関数で受け取る必要があります。 NSPV2_ROUTINE 構造体内にある、実装されていない NSPv2ClientSessionRundown 関数への NSPv2 関数ポインターは、そのスタブ関数を指すようにする必要があります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)