LPNSPV2STARTUP Rückruffunktion (ws2spi.h)

Die NSPv2Startup-Funktion benachrichtigt einen Namespacedienstanbieter der Version 2 (NSPv2), dass ein neuer Clientprozess mit der Verwendung des Anbieters beginnen soll.

Syntax

LPNSPV2STARTUP Lpnspv2startup;

INT Lpnspv2startup(
  [in] LPGUID lpProviderId,
  [in] LPVOID *ppvClientSessionArg
)
{...}

Parameter

[in] lpProviderId

Ein Zeiger auf die GUID des zu benachrichtigenden Namespaceanbieters.

[in] ppvClientSessionArg

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 bei der Routine ein Fehler auftritt und der entsprechende Fehlercode mithilfe von WSASetLastError festgelegt werden muss.

Fehlercode Bedeutung
WSA_NOT_ENOUGH_MEMORY
Für diesen Vorgang ist nicht genügend Arbeitsspeicher verfügbar.
WSAEACCES
Die aufrufende Routine verfügt nicht über ausreichende Berechtigungen zum Initialisieren des Diensts.
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 NSPv2Startup-Funktion wird als Teil der NSPv2-Architektur (Namespace Service Provider Version-2) verwendet, die unter Windows Vista und höher verfügbar ist.

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

Die NSPv2Startup-Funktion wird jedes Mal aufgerufen, wenn ein neuer Clientprozess mithilfe des Namespaceanbieters beginnt. Anbieter können das Clientsitzungsargument verwenden, auf das der parameter ppvClientSessionArg verweist, um Informationen zu dieser Sitzung zu speichern. Der Wert im parameter ppvClientSessionArg wird an nachfolgende NSPv2-Funktionsaufrufe in derselben Sitzung übergeben. Das Clientsitzungsargument kann NULL sein, wenn der Namespaceanbieter diese Informationen nicht benötigt.

Die NSPv2Startup-Funktion wird aufgerufen, wenn eine neue Clientsitzung initialisiert wird. Die Funktionen NSPv2Startup und NSPv2Cleanup müssen als Paare aufgerufen werden.

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 Namespace-Dienstanbieter verringert.

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

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

Anforderungen

Anforderung Wert
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

NSPv2Cleanup

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

WSAQUERYSET2

WSASetLastError