LPNSPV2CLEANUP Rückruffunktion (ws2spi.h)

Die NSPv2Cleanup-Funktion benachrichtigt einen NSPv2-Anbieter (Namespace service provider version-2), dass eine Clientsitzung beendet wurde.

Syntax

LPNSPV2CLEANUP Lpnspv2cleanup;

INT Lpnspv2cleanup(
  [in] LPGUID lpProviderId,
  [in] LPVOID pvClientSessionArg
)
{...}

Parameter

[in] lpProviderId

Ein Zeiger auf die GUID des Namespaceanbieters, der benachrichtigt werden soll.

[in] pvClientSessionArg

Ein Zeiger auf die Clientsitzung.

Rückgabewert

Die Funktion sollte NO_ERROR (null) zurückgeben, wenn die Routine erfolgreich ist. Es sollte SOCKET_ERROR (d. h. 1) zurückgeben, wenn die Routine fehlschlägt und der entsprechende Fehlercode mithilfe von WSASetLastError festgelegt werden muss.

Fehlercode Bedeutung
WSA_NOT_ENOUGH_MEMORY
Es ist nicht genügend Arbeitsspeicher verfügbar, um diesen Vorgang auszuführen.
WSAEACCES
Die aufrufende Routine verfügt nicht über ausreichende Berechtigungen, um den Dienst zu initialisieren.
WSAEINVAL
Mindestens ein Parameter war für diesen Anbieter ungültig oder fehlte.
WSAEOPNOTSUPP
Der Vorgang wird nicht unterstützt. Dieser Fehler wird zurückgegeben, wenn der Namespaceanbieter diese Funktion nicht implementiert.
WSASERVICE_NOT_FOUND
Der Dienst ist unbekannt. Der Dienst kann nicht im angegebenen Namespace gefunden werden.

Hinweise

Die NSPv2Cleanup-Funktion wird als Teil der NSPv2-Architektur (NSPv2) des Namespacedienstanbieters verwendet, die unter Windows Vista und höher verfügbar ist.

Unter Windows Vista und Windows Server 2008 kann die NSPv2Cleanup-Funktion nur für Vorgänge auf NS_EMAIL Namespaceanbietern verwendet werden.

Die NSPv2Startup-Funktion wird jedes Mal aufgerufen, wenn ein neuer Clientprozess mit dem Namespaceanbieter beginnt. Anbieter können das Clientsitzungsargument verwenden, auf das der parameter ppvClientSessionArg verweist, um Informationen zu dieser Sitzung zu speichern. Wenn beim Aufruf der NSPv2Startup-Funktion ein Wert für das Clientsitzungsargument angegeben wurde, kann dasselbe Clientsitzungsargument im parameter pvClientSessionArg an die NSPv2Cleanup-Funktion übergeben werden, um den Namespaceanbieter zu benachrichtigen, dass die Clientsitzung beendet wurde.

Die NSPv2Cleanup-Funktion wird aufgerufen, wenn eine Anwendung mit einem Windows Sockets-Namespacedienstanbieter abgeschlossen ist. NSPv2Cleanup ermöglicht es dem Namespaceanbieter, alle Namespaceanbieterressourcen freizugeben, die für die Clientsitzung zugewiesen wurden.

Die NSPv2Startup-Funktion muss vor dem Aufrufen der NSPv2Cleanup-Funktion erfolgreich aufgerufen werden. Es ist zulässig, mehrere NSPv2Startup-Aufrufe zu tätigen. Für jeden NSPv2Startup-Aufruf muss jedoch auch ein entsprechender NSPv2Cleanup-Aufruf ausgegeben werden. Nur die endgültige NSPv2Cleanup für den Dienstanbieter führt die eigentliche Bereinigung durch; Durch die vorherigen Aufrufe wird eine interne Verweisanzahl im Dienstanbieter verringert.

Die Funktionen NSPv2Startup, NSPv2ClientSessionRundown und NSPv2Cleanup sind optional, abhängig von den Anforderungen des NSPv2-Anbieters.

Wenn die NSPv2Cleanup-Funktion nicht implementiert ist, sollten Aufrufe dieser Funktion von einer Stubfunktion abgefangen werden, die WSAEOPNOTSUPP zurückgibt. Der NSPv2-Funktionszeiger auf die nicht implementierte NSPv2Cleanup-Funktion in der NSPV2_ROUTINE-Struktur sollte auf die Stubfunktion verweisen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ws2spi.h

Weitere Informationen

NSPV2_ROUTINE

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

NSPv2Startup

WSAQUERYSET2

WSASetLastError