Bluetooth und WSAQUERYSET für Dienstanfrage

Bluetooth verwendet die WSAQUERYSET-Struktur mit verschiedenen Funktionen, um die Ermittlung von Geräten und Diensten im Bluetooth-Namespace zu erleichtern, NS_BTH.

Die Funktionen WSALookupServiceBegin und WSALookupServiceNext verwenden die WSAQUERYSET-Struktur , um Daten zum Dienstabfrageprozess abzurufen. In der folgenden Tabelle wird beschrieben, wie die Memberwerte in der WSAQUERYSET-Struktur zu diesem Zweck festgelegt werden.

Member Eingabe an WSALookupServiceBegin Zurückgegebener Wert von WSALookupServiceNext
dwSize Muss auf sizeof(WSAQUERYSET) festgelegt werden. sizeof(WSAQUERYSET) wird vom System zurückgegeben.
dwOutputFlags Nicht verwendet. Nicht verwendet.
lpszServiceInstanceName Wird nicht verwendet. Anzeigename des Diensts, konvertiert als UTF-8-codierte Zeichenfolge aus der Standardsprachcodierung des Bluetooth ServiceName SDP-Attributs. Wird zurückgegeben, wenn LUP_RETURN_NAME angegeben ist.
lpServiceClassId Erforderlich. Die spezifischste einzelne Bluetooth-UUID für die Dienste, für die die Suche durchgeführt wird. Wenn dieser Wert beispielsweise auf die UUID des L2CAP-Protokolls festgelegt ist, werden alle Dienste zurückgegeben, die das L2CAP-Protokoll auf dem Zielgerät verwenden. Wenn sie auf die UUID eines bestimmten Diensts festgelegt ist, werden nur die Instanzen dieses Diensts zurückgegeben. Wird nicht verwendet.
lpVersion Nicht verwendet. Nicht verwendet.
lpszComment Wird nicht verwendet. Beschreibung des Diensts, der aus der Standardsprachcodierung des Bluetooth ServiceDescription SDP-Attributs als UTF-8-codierte Zeichenfolge konvertiert wurde. Wird zurückgegeben, wenn LUP_RETURN_COMMENT angegeben ist.
dwNameSpace Muss NS_BTH sein. Gibt NS_BTH zurück.
lpNSProviderId Nicht verwendet. Nicht verwendet.
lpszContext Erforderlich. Die Bluetooth-Geräteadresse, mit der eine SDP-Verbindung hergestellt und Dienste abfragt werden sollen. Bei diesem Wert muss es sich um eine Zeichenfolge handeln, die mithilfe des Funktionsaufrufs WSAAddressToString konvertiert wurde. Wenn die lokale Bluetooth-Geräteadresse angegeben wird, wird die lokale SDP-Datenbank durchsucht. Wird nicht verwendet.
dwNumberOfProtocols Nicht verwendet. Nicht verwendet.
lpafpProtocols Nicht verwendet. Nicht verwendet.
lpszQueryString Nicht verwendet. Nicht verwendet.
dwNumberOfCsAddrs Wird nicht verwendet. Gibt die Anzahl der Elemente im Array von CSADDR_INFO Strukturen an.
lpcsaBuffer Wird nicht verwendet. Zeiger auf eine CSADDR_INFO-Struktur , deren LocalAddr.lpSockaddr-Member auf eine SOCKADDR_BTH verweist, die die vollständige verbindungsbare Adresse des Remotediensts enthält, die aus dem ersten Eintrag des Bluetooth ProtocolDescriptorList-SDP-Attributs konvertiert wurde. Wird zurückgegeben, wenn LUP_RETURN_ADDR angegeben ist.
lpBlob Optional. Zeiger auf eine BTH_QUERY_SERVICE-Struktur , die erweiterte Parameter enthält, um die Ergebnisse der Suche einzuschränken. Falls angegeben, wird lpServiceClassId ignoriert, und zwischengespeicherte Abfragen sind nicht erfolgreich.
  • Wenn eine Dienstsuche ausgeführt wird: Zeiger auf eine BLOB-Struktur , die die Diensthandles zurückgibt. (BLOB.cbSize)/sizeof(ULONG) berechnet die Anzahl der Handles. BLOB.pBlobData ist ein Array von ULONG-Werten, die die Diensthandles darstellen.
  • Wenn eine Attribut- oder ServiceAttribute-Suche ausgeführt wird: Zeiger auf eine BLOB-Struktur , die den binären SDP-Datensatz zurückgibt. BLOB.cbSize ist die Größe des binären SDP-Datensatzes. BLOB.pBlobData verweist auf den Datensatz selbst. Der binäre SDP-Datensatz ist in vielen Fällen erforderlich, da nur eine begrenzte Anzahl von SDP-Attributen in die WSAQUERYSET-Struktur konvertiert werden kann und nur standardcodierte UTF-8-Zeichenfolgen konvertiert werden. Funktionen zur Unterstützung der Analyse des binären SDP-Datensatzes finden Sie im Abschnitt Bluetooth-Referenz .
  • Wird zurückgegeben, wenn LUP_RETURN_BLOB angegeben ist.

 

Bluetooth und WSAQUERYSET für Set Service

Bluetooth und WSAQUERYSET für Geräteabfrage

Bluetooth und BLOB

Bluetooth und WSALookupServiceBegin

Bluetooth und WSALookupServiceNext

Bluetooth-Referenz

BLOB

BTH_QUERY_SERVICE

CSADDR_INFO

SOCKADDR_BTH

WSAAddressToString

WSAQUERYSET

Windows Sockets