Share via


LPNSPCLEANUP コールバック関数 (ws2spi.h)

NSPCleanup 関数は、特定の Windows ソケット名前空間サービス プロバイダーの使用を終了します。

構文

LPNSPCLEANUP Lpnspcleanup;

INT Lpnspcleanup(
  [in] LPGUID lpProviderId
)
{...}

パラメーター

[in] lpProviderId

終了する名前空間プロバイダーの GUID へのポインター。

戻り値

エラーが発生しない場合、 NSPCleanupNO_ERROR (ゼロ) の値を返します。 それ以外の場合は、 SOCKET_ERROR (-1) が返され、プロバイダーは WSASetLastError を使用して適切なエラー コードを設定する必要があります。

エラー コード 意味
WSA_NOT_ENOUGH_MEMORY この操作を実行するのに十分なメモリがありません。
WSAEINVAL lpProviderId パラメーターで有効なプロバイダーが指定されていません。
WSAEOPNOTSUPP この操作はサポートされていません。 名前空間プロバイダーがこの関数を実装していない場合、このエラーが返されます。

注釈

NSPCleanup 関数は、Windows ソケット名前空間サービス プロバイダーを使用してアプリケーションが終了したときに呼び出されます。 NSPCleanup 関数は、特定の名前空間プロバイダーの登録を解除し、トランスポート サービス プロバイダーが名前空間プロバイダーの割り当てられたリソースを解放できるようにします。

名前空間プロバイダーを使用する前に、 NSPStartup 関数を正常に呼び出す必要があります。 複数の NSPStartup 呼び出しを行うことができます。 ただし、 NSPStartup 呼び出しごとに、対応する NSPCleanup 呼び出しも発行する必要があります。 実際のクリーンアップは、サービス プロバイダーの最終的な NSPCleanup だけです。上記の 呼び出しは、サービス プロバイダーの内部参照カウントをデクリメントします。

名前空間サービス プロバイダー DLL をメモリからアンロードできるようになるまで、この関数は を返すべきではありません。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー ws2spi.h

こちらもご覧ください