WSAQUERYSETW-Struktur (winsock2.h)
Die WSAQUERYSET--Struktur stellt relevante Informationen zu einem bestimmten Dienst bereit, einschließlich Dienstklassen-ID, Dienstname, anwendbarer Namespacebezeichner und Protokollinformationen sowie eine Gruppe von Transportadressen, an denen der Dienst lauscht.
Syntax
typedef struct _WSAQuerySetW {
DWORD dwSize;
LPWSTR lpszServiceInstanceName;
LPGUID lpServiceClassId;
LPWSAVERSION lpVersion;
LPWSTR lpszComment;
DWORD dwNameSpace;
LPGUID lpNSProviderId;
LPWSTR lpszContext;
DWORD dwNumberOfProtocols;
LPAFPROTOCOLS lpafpProtocols;
LPWSTR lpszQueryString;
DWORD dwNumberOfCsAddrs;
LPCSADDR_INFO lpcsaBuffer;
DWORD dwOutputFlags;
LPBLOB lpBlob;
} WSAQUERYSETW, *PWSAQUERYSETW, *LPWSAQUERYSETW;
Angehörige
dwSize
Typ: DWORD-
Die Größe der WSAQUERYSET- Struktur in Byte. Dieses Element wird als Versionsverwaltungsmechanismus verwendet, da sich die Größe des WSAQUERYSET Struktur in späteren Versionen von Windows geändert hat.
lpszServiceInstanceName
Typ: LPTSTR-
Ein Zeiger auf eine optionale NULL-beendete Zeichenfolge, die den Dienstnamen enthält. Die Semantik für die Verwendung von Wildcards innerhalb der Zeichenfolge ist nicht definiert, kann aber von bestimmten Namespaceanbietern unterstützt werden.
lpServiceClassId
Typ: LPGUID-
Die GUID, die der Dienstklasse entspricht. Dieses Element muss festgelegt werden.
lpVersion
Typ: LPWSAVERSION
Ein Zeiger auf eine optionale gewünschte Versionsnummer des Namespaceanbieters. Dieses Mitglied stellt die Versionsvergleichsemantik bereit (d. a. die angeforderte Version muss exakt übereinstimmen, oder die Version darf nicht kleiner als der angegebene Wert sein).
lpszComment
Typ: LPTSTR-
Dieses Element wird für Abfragen ignoriert.
dwNameSpace
Typ: DWORD-
Ein Namespacebezeichner, der bestimmt, welche Namespaceanbieter abgefragt werden. Das Übergeben eines bestimmten Namespacebezeichners führt nur zu Namespaceanbietern, die den angegebenen Namespace unterstützen, der abgefragt wird. Wenn Sie NS_ALL angeben, werden alle installierten und aktiven Namespaceanbieter abgefragt.
Optionen für das dwNameSpace Mitglied sind in der Winsock2.h enthaltene Datei aufgeführt. Mehrere neue Namespaceanbieter sind in Windows Vista und höher enthalten. Andere Namespaceanbieter können installiert werden, sodass die folgenden möglichen Werte nur die allgemein verfügbaren sind. Viele andere Werte sind möglich.
lpNSProviderId
Typ: LPGUID-
Ein Zeiger auf eine optionale GUID eines bestimmten Namespaceanbieters, der abgefragt werden soll, wenn mehrere Namespaceanbieter unter einem einzelnen Namespace wie NS_DNSregistriert sind. Das Übergeben der GUID für einen bestimmten Namespaceanbieter führt nur dazu, dass der angegebene Namespaceanbieter abgefragt wird. Die funktionen WSAEnumNameSpaceProviders und WSAEnumNameSpaceProvidersEx können aufgerufen werden, um die GUID für einen Namespaceanbieter abzurufen.
lpszContext
Typ: LPTSTR-
Ein Zeiger auf einen optionalen Ausgangspunkt der Abfrage in einem hierarchischen Namespace.
dwNumberOfProtocols
Typ: DWORD-
Die Größe des Protokolleinschränkungsarrays in Bytes. Dieses Element kann null sein.
lpafpProtocols
Typ: LPAFPROTOCOLS
Ein Zeiger auf ein optionales Array von AFPROTOCOLS- Strukturen. Nur Dienste, die diese Protokolle verwenden, werden zurückgegeben.
lpszQueryString
Typ: LPTSTR-
Ein Zeiger auf eine optionale NULL-beendete Abfragezeichenfolge. Einige Namespaces, z. B. Whois++, unterstützen erweiterte SQL-ähnliche Abfragen, die in einer einfachen Textzeichenfolge enthalten sind. Dieser Parameter wird verwendet, um diese Zeichenfolge anzugeben.
dwNumberOfCsAddrs
Typ: DWORD-
Dieses Element wird für Abfragen ignoriert.
lpcsaBuffer
Typ: LPCSADDR_INFO
Dieses Element wird für Abfragen ignoriert.
dwOutputFlags
Typ: DWORD-
Dieses Element wird für Abfragen ignoriert.
lpBlob
Typ: LPBLOB-
Ein optionaler Zeiger auf Daten, die zum Abfragen oder Festlegen von anbieterspezifischen Namespaceinformationen verwendet werden. Das Format dieser Informationen ist spezifisch für den Namespaceanbieter.
Bemerkungen
Die WSAQUERYSET--Struktur wird als Teil der ursprünglichen Namespaceanbieterversion 1-Architektur verwendet, die unter Windows 95 und höher verfügbar ist. Eine neuere Version 2 der Namespacearchitektur ist unter Windows Vista und höher verfügbar.
In den meisten Fällen sollten Anwendungen, die nur an einem bestimmten Transportprotokoll interessiert sind, ihre Abfrage nach Adressfamilie und Protokoll statt nach Namespace einschränken. Dies würde es einer Anwendung ermöglichen, die einen TCP/IP-Dienst suchen muss, z. B. die Abfrage aller verfügbaren Namespaces, z. B. die lokale Hostdatei, DNS und NIS, verarbeitet zu lassen.
Anmerkung
Der winsock2.h-Header definiert WSAQUERYSET als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Header- | winsock2.h |
Siehe auch
Bluetooth und WSAQUERYSET für Geräteanfrage