Share via


LPNSPV2CLIENTSESSIONRUNDOWN回呼函式 (ws2spi.h)

NSPv2ClientSessionRundown函式會通知命名空間服務提供者第 2 版 (NSPv2) 提供者用戶端會話正在終止。

語法

LPNSPV2CLIENTSESSIONRUNDOWN Lpnspv2clientsessionrundown;

void Lpnspv2clientsessionrundown(
  [in] LPGUID lpProviderId,
  [in] LPVOID pvClientSessionArg
)
{...}

參數

[in] lpProviderId

要通知之特定命名空間提供者之 GUID 的指標。

[in] pvClientSessionArg

終止之用戶端會話的指標。

傳回值

如果常式成功,函式應該會 傳回NO_ERROR (零) 。 它應該會 傳回SOCKET_ERROR (,也就是說,如果常式失敗,則傳回 1) ,而且必須使用 WSASetLastError設定適當的錯誤碼。

錯誤碼 意義
WSA_NOT_ENOUGH_MEMORY
記憶體不足,無法執行這項作業。
WSAEACCES
呼叫常式沒有足夠的許可權可安裝服務。
WSAEINVAL
此提供者的一或多個參數無效或遺失。
WSAEOPNOTSUPP
不支援此作業。 如果命名空間提供者未實作此函式,就會傳回此錯誤。 如果指定的 dwControlCode 是無法辨識的命令,也可以傳回此錯誤。
WSASERVICE_NOT_FOUND
服務未知。 在指定的命名空間中找不到服務。

備註

NSPv2ClientSessionRundown函式會作為 Windows Vista 和更新版本上可用的命名空間服務提供者版本 2 (NSPv2) 架構的一部分。

在 Windows Vista 和 Windows Server 2008 上, NSPv2ClientSessionRundown 函式只能用於NS_EMAIL命名空間提供者上的作業。

每次新的用戶端進程開始使用命名空間提供者時,都會呼叫 NSPv2Startup 函式。 提供者可以使用 ppvClientSessionArg 參數所指向的用戶端會話引數來儲存此會話的相關資訊。 如果在呼叫 NSPv2Startup 函式時為用戶端會話引數指定值,則會在 pvClientSessionArg 參數中傳遞這個相同的用戶端會話引數至 NSPv2ClientSessionRundown 函式。

NSPv2StartupNSPv2ClientSessionRundownNSPv2Cleanup函式是選擇性的,取決於 NSPv2 提供者的需求。

如果未實作 NSPv2ClientSessionRundown 函式,則應該由傳回 WSAEOPNOTSUPP的存根函式攔截該函式的呼叫。 NSPV2_ROUTINE結構中未實作NSPv2ClientSessionRundown 函式的 NSPv2函式指標應該指向存根函式。

規格需求

   
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 ws2spi.h

另請參閱

NSPV2_ROUTINE

NSPv2Cleanup

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

NSPv2Startup

WSAQUERYSET2

WSASetLastError