Condividi tramite


LPNSPV2STARTUP funzione di callback (ws2spi.h)

La funzione NSPv2Startup informa un provider di servizi dello spazio dei nomi versione-2 (NSPv2) che un nuovo processo client deve iniziare a usare il provider.

Sintassi

LPNSPV2STARTUP Lpnspv2startup;

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

Parametri

[in] lpProviderId

Puntatore al GUID del provider di spazi dei nomi specifico da notificare.

[in] ppvClientSessionArg

Puntatore alla sessione client.

Valore restituito

La funzione deve restituire NO_ERROR (zero) se la routine ha esito positivo. Deve restituire SOCKET_ERROR (ovvero 1) se la routine ha esito negativo e deve impostare il codice di errore appropriato usando WSASetLastError.

Codice di errore Significato
WSA_NOT_ENOUGH_MEMORY
Non è disponibile memoria sufficiente per eseguire questa operazione.
WSAEACCES
La routine chiamante non dispone di privilegi sufficienti per inizializzare il servizio.
WSAEINVAL
Uno o più parametri non sono validi o mancanti per questo provider.
WSAEOPNOTSUPP
L'operazione non è supportata. Questo errore viene restituito se il provider di spazi dei nomi non implementa questa funzione.
WSASERVICE_NOT_FOUND
Il servizio è sconosciuto. Impossibile trovare il servizio nello spazio dei nomi specificato.

Commenti

La funzione NSPv2Startup viene usata come parte dell'architettura del provider di servizi dello spazio dei nomi versione-2 (NSPv2) disponibile in Windows Vista e versioni successive.

In Windows Vista e Windows Server 2008 la funzione NSPv2Startup può essere usata solo per le operazioni sui provider di spazi dei nomi NS_EMAIL.

La funzione NSPv2Startup viene chiamata ogni volta che un nuovo processo client inizia usando il provider di spazi dei nomi. I provider possono usare l'argomento sessione client a cui punta il parametro ppvClientSessionArg per archiviare informazioni su questa sessione. Il valore nel parametro ppvClientSessionArg verrà passato alle chiamate di funzione NSPv2 successive nella stessa sessione. L'argomento sessione client può essere NULL, se il provider di spazi dei nomi non richiede queste informazioni.

La funzione NSPv2Startup viene chiamata quando viene inizializzata una nuova sessione client. Le funzioni NSPv2Startup e NSPv2Cleanup devono essere chiamate come coppie.

La funzione NSPv2Startup deve essere chiamata correttamente prima di chiamare la funzione NSPv2Cleanup . È consentito effettuare più chiamate NSPv2Startup . Tuttavia, per ogni chiamata NSPv2Startup , deve essere rilasciata anche una chiamata NSPv2Cleanup corrispondente. Solo il NSPv2Cleanup finale per il provider di servizi esegue la pulizia effettiva; le chiamate precedenti decrenono un conteggio dei riferimenti interni nel provider di servizi dello spazio dei nomi.

Le funzioni NSPv2Startup, NSPv2ClientSessionRundown e NSPv2Cleanup sono facoltative, a seconda dei requisiti del provider NSPv2.

Se la funzione NSPv2Startup non è implementata, le chiamate a tale funzione devono essere intercettate da una funzione stub che restituisce WSAEOPNOTSUPP. Il puntatore della funzione NSPv2 alla funzione NSPv2Startup non implementata nella struttura di NSPV2_ROUTINE deve puntare alla funzione stub.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ws2spi.h

Vedi anche

NSPV2_ROUTINE

NSPv2Cleanup

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

WSAQUERYSET2

WSASetLastError