Condividi tramite


struttura NSPV2_ROUTINE (ws2spi.h)

La struttura NSPV2_ROUTINE contiene informazioni sulle funzioni implementate da un provider di servizi dello spazio dei nomi versione 2 (NSPv2).

Nota La struttura del file di intestazione Ws2spi.h contiene prototipi completi per tutti i puntatori a funzione NSPV2.

 

Sintassi

typedef struct _NSPV2_ROUTINE {
  DWORD                       cbSize;
  DWORD                       dwMajorVersion;
  DWORD                       dwMinorVersion;
  LPNSPV2STARTUP              NSPv2Startup;
  LPNSPV2CLEANUP              NSPv2Cleanup;
  LPNSPV2LOOKUPSERVICEBEGIN   NSPv2LookupServiceBegin;
  LPNSPV2LOOKUPSERVICENEXTEX  NSPv2LookupServiceNextEx;
  LPNSPV2LOOKUPSERVICEEND     NSPv2LookupServiceEnd;
  LPNSPV2SETSERVICEEX         NSPv2SetServiceEx;
  LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown;
} NSPV2_ROUTINE, *PNSPV2_ROUTINE, *LPNSPV2_ROUTINE;

Members

cbSize

Tipo: DWORD

Dimensione, in byte, della struttura.

dwMajorVersion

Tipo: DWORD

Versione principale della specifica del provider di servizi supportata da questo provider.

dwMinorVersion

Tipo: DWORD

Versione secondaria della specifica del provider di servizi supportata da questo provider.

NSPv2Startup

Tipo: ** LPNSPV2STARTUP**

Puntatore alla funzione NSPv2Startup per questo provider NSPv2.

NSPv2Cleanup

Tipo: LPNSPV2CLEANUP

Puntatore alla funzione NSPv2Cleanup per questo provider NSPv2.

NSPv2LookupServiceBegin

Tipo: LPNSPV2LOOKUPSERVICEBEGIN

Puntatore alla funzione NSPv2LookupServiceBegin per questo provider NSPv2.

NSPv2LookupServiceNextEx

Tipo: LPNSPV2LOOKUPSERVICENEXTEX

Puntatore alla funzione NSPv2LookupServiceNextEx per questo provider NSPv2.

NSPv2LookupServiceEnd

Tipo: LPNSPV2LOOKUPSERVICEEND

Puntatore alla funzione NSPv2LookupServiceEnd per questo provider NSPv2.

NSPv2SetServiceEx

Tipo: LPNSPV2SETSERVICEEX

Puntatore alla funzione NSPv2SetServiceEx per questo provider NSPv2.

NSPv2ClientSessionRundown

Tipo: LPNSPV2CLIENTSESSIONRUNDOWN

Puntatore alla funzione NSPv2ClientSessionRundown per questo provider NSPv2.

Commenti

La struttura NSPV2_ROUTINE 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 struttura NSPV2_ROUTINE può essere usata solo per le operazioni sui provider di spazi dei nomi NS_EMAIL.

La funzione WSAAdvertiseProvider annuncia un'istanza di un provider NSPv2 per consentire ai client di trovare. Il chiamante WSAAdvertiseProvider passa un puntatore a una struttura NSPV2_ROUTINE nel parametro pNSPv2Routine con i punti di ingresso NSPv2 supportati dal provider.

Per implementare le funzioni seguenti è necessario un provider NSPv2:

NSPv2LookupServiceBegin

- NSPv2LookupServiceNextEx

- NSPv2LookupServiceEnd

Tutte le altre funzioni sono facoltative, a seconda dei requisiti del provider NSPv2.

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

In generale, i provider NSPv2 vengono implementati in processi diversi dalle applicazioni chiamanti. I provider NSPv2 non vengono attivati in seguito all'attività del client. Ogni applicazione di hosting del provider decide quando rendere disponibile o non disponibile un provider specifico chiamando le funzioni WSAAAdvertiseProvider e WSAUnadvertiseProvider . L'attività client comporta solo tentativi di contattare il provider, quando disponibile (quando il provider dello spazio dei nomi viene annunciato).

Un processo può implementare e annunciare più provider contemporaneamente. Windows Sockets gestirà i provider di spazi dei nomi inviando chiamate a quella corretta. Nasconde anche i dettagli dell'interfaccia RPC e converte le chiamate tra processi in chiamate in-process. Pertanto, il provider NSPv2 deve implementare solo una tabella di funzioni del punto di ingresso simili alla struttura NSP_ROUTINE usata da un provider NSPv1. Un provider NSPv2 non deve preoccuparsi dei requisiti specifici di RPC ,ad esempio il marshalling dei dati e la serializzazione.

La funzione WSAUnadvertiseProvider rende un provider di spazi dei nomi specifico non più disponibile per i client.

Requisiti

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

Vedi anche

NSP_ROUTINE

NSPv2Cleanup

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

NSPv2Startup

WSAAdvertiseProvider

WSAProviderCompleteAsyncCall

WSAQUERYSET2

WSAUnadvertiseProvider