struttura WSAQUERYSET2A (winsock2.h)

La struttura WSAQUERYSET2 fornisce informazioni rilevanti su un determinato servizio, inclusi l'ID classe del servizio, il nome del servizio , l'identificatore dello spazio dei nomi applicabile e le informazioni sul protocollo, nonché un set di indirizzi di trasporto in cui il servizio è in ascolto.

Sintassi

typedef struct _WSAQuerySet2A {
  DWORD         dwSize;
  LPSTR         lpszServiceInstanceName;
  LPWSAVERSION  lpVersion;
  LPSTR         lpszComment;
  DWORD         dwNameSpace;
  LPGUID        lpNSProviderId;
  LPSTR         lpszContext;
  DWORD         dwNumberOfProtocols;
  LPAFPROTOCOLS lpafpProtocols;
  LPSTR         lpszQueryString;
  DWORD         dwNumberOfCsAddrs;
  LPCSADDR_INFO lpcsaBuffer;
  DWORD         dwOutputFlags;
  LPBLOB        lpBlob;
} WSAQUERYSET2A, *PWSAQUERYSET2A, *LPWSAQUERYSET2A;

Members

dwSize

Tipo: DWORD

Dimensione, in byte, della struttura WSAQUERYSET2 . Questo membro viene usato come meccanismo di controllo delle versioni perché le dimensioni della struttura WSAQUERYSET2 possono cambiare nelle versioni successive di Windows.

lpszServiceInstanceName

Tipo: LPTSTR

Puntatore a una stringa facoltativa con terminazione NULL contenente il nome del servizio. La semantica per l'uso di caratteri jolly all'interno della stringa non è definita, ma può essere supportata da determinati provider di spazi dei nomi.

lpVersion

Tipo: LPWSAVERSION

Puntatore a un numero di versione desiderato facoltativo del provider dello spazio dei nomi. Questo membro fornisce la semantica di confronto delle versioni, ovvero la versione richiesta deve corrispondere esattamente o la versione non deve essere minore del valore fornito.

lpszComment

Tipo: LPTSTR

Questo membro viene ignorato per le query.

dwNameSpace

Tipo: DWORD

Identificatore dello spazio dei nomi che determina quali provider di spazi dei nomi vengono sottoposti a query. Il passaggio di un identificatore dello spazio dei nomi specifico comporterà solo i provider dello spazio dei nomi che supportano la query dello spazio dei nomi specificato. Se si specifica NS_ALL verrà eseguita una query in tutti i provider di spazi dei nomi installati e attivi.

Le opzioni per il membro dwNameSpace sono elencate nel file di inclusione Winsock2.h . Diversi nuovi provider di spazi dei nomi sono inclusi in Windows Vista e versioni successive. È possibile installare altri provider di spazi dei nomi, pertanto i valori possibili seguenti sono solo quelli comunemente disponibili. Sono possibili molti altri valori.

Valore Significato
NS_ALL
Tutti gli spazi dei nomi installati e attivi.
NS_BTH
Spazio dei nomi Bluetooth. Questo identificatore dello spazio dei nomi è supportato in Windows Vista e versioni successive.
NS_DNS
Spazio dei nomi DNS (Domain Name System).
NS_EMAIL
Spazio dei nomi del messaggio di posta elettronica. Questo identificatore dello spazio dei nomi è supportato in Windows Vista e versioni successive.
NS_NLA
Spazio dei nomi NLA (Network Location Awareness). Questo identificatore dello spazio dei nomi è supportato in Windows XP e versioni successive.
NS_PNRPNAME
Spazio dei nomi peer-to-peer per un nome peer specifico. Questo identificatore dello spazio dei nomi è supportato in Windows Vista e versioni successive.
NS_PNRPCLOUD
Spazio dei nomi peer-to-peer per una raccolta di nomi peer. Questo identificatore dello spazio dei nomi è supportato in Windows Vista e versioni successive.

lpNSProviderId

Tipo: LPGUID

Puntatore a un GUID facoltativo di un provider di spazi dei nomi specifico per eseguire una query nel caso in cui più provider di spazi dei nomi siano registrati in un singolo spazio dei nomi, ad esempio NS_DNS. Se si passa il GUID per un provider di spazi dei nomi specifico, verrà eseguita una query solo sul provider di spazi dei nomi specificato. Le funzioni WSAEnumNameSpaceProviders e WSAEnumNameSpaceProvidersEx possono essere chiamate per recuperare il GUID per un provider di spazi dei nomi.

lpszContext

Tipo: LPTSTR

Puntatore a un punto di partenza facoltativo della query in uno spazio dei nomi gerarchico.

dwNumberOfProtocols

Tipo: DWORD

Dimensione, in byte, della matrice di vincoli del protocollo. Questo membro può essere zero.

lpafpProtocols

Tipo: LPAFPROTOCOLS

Puntatore a una matrice facoltativa di strutture AFPROTOCOLS . Verranno restituiti solo i servizi che utilizzano questi protocolli.

lpszQueryString

Tipo: LPTSTR

Puntatore a una stringa di query con terminazione NULL facoltativa. Alcuni spazi dei nomi, ad esempio Whois++, supportano query di tipo SQL arricchite contenute in una stringa di testo semplice. Questo parametro viene usato per specificare tale stringa.

dwNumberOfCsAddrs

Tipo: DWORD

Questo membro viene ignorato per le query.

lpcsaBuffer

Tipo: LPCSADDR_INFO

Questo membro viene ignorato per le query.

dwOutputFlags

Tipo: DWORD

Questo membro viene ignorato per le query.

lpBlob

Tipo: LPBLOB

Puntatore facoltativo ai dati utilizzati per eseguire query o impostare informazioni sullo spazio dei nomi specifiche del provider. Il formato di queste informazioni è specifico del provider dello spazio dei nomi.

Commenti

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

Nota

L'intestazione winsock2.h definisce WSAQUERYSET2 come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Intestazione winsock2.h

Vedi anche

WSAEnumNameSpaceProviders

WSAEnumNameSpaceProvidersEx

WSASetService