Bluetooth und WSAQUERYSET für Set Service

Bluetooth verwendet die WSAQUERYSET-Struktur, um die Ermittlung von Geräten und Diensten im Bluetooth Namespace NS BTH zu _ erleichtern.

Die WSASetService-Funktion verwendet die WSAQUERYSET-Struktur, um Dienstinstanzen im Bluetooth-Namespace zu registrieren oder zu entfernen. In der folgenden Tabelle sind Die Memberwerte in der WSAQUERYSET-Struktur aufgeführt.

Member Erforderlicher Wert (Eingabe) Ausgabe
dwSize Muss auf sizeof festgelegt werden (WSAQUERYSET). Wird als Versionsausgleichsmechanismus verwendet. Keine.
dwOutputFlags Wird nicht verwendet. Keine.
lpszServiceInstanceName Optional, wird jedoch empfohlen. Wird verwendet, um das Bluetooth ServiceName-Attribut zu erstellen. Keine.
lpServiceClassId Erforderlich. GUID, die der Dienstklasse entspricht. Dieser Wert sollte einer GUID aus dem Dokument Bluetooth Zugewiesene Zahlen für bekannte Profile oder einer eindeutigen anwendungsgenerierten UUID für Anwendungen entsprechen, die nicht profilbasiert sind. Wird verwendet, um eine ServiceClassIdList-Attributsequenz mit diesem als einzigem Member zu erstellen. Keine.
lpVersion Wird nicht verwendet. Keine.
lpszComment Optional. Wird verwendet, um das Bluetooth ServiceDescription-Attribut zu erstellen. Keine.
dwNameSpace Namespace, in dem der Dienst eingeschränkt werden soll. Muss NS _ BTH sein. Keine.
lpNSProviderId Nicht erforderlich. Keine.
lpszContext Wird nicht verwendet. Keine.
dwNumberOfProtocols Wird nicht verwendet. Keine.
lpafpProtocols Wird nicht verwendet. Keine.
lpszQueryString Wird nicht verwendet. Keine.
dwNumberOfCsAddrs Anzahl der zu registrierende Adressen. Muss 1 sein. Keine.
lpcsaBuffer Erforderlich, wenn lpBlob nicht mit einem unformatierten SDP-Datenstrom aufgefüllt wurde. Zeiger auf eine CSADDR _ INFO-Struktur mit dem zugehörigen LocalAddr.lpSockaddr-Member, der auf die SOCKADDR _ BTH zeigt, in der der Server auf Verbindungen lauscht. Die getsockname-Funktion kann verwendet werden, um die SOCKADDR-BTH-Struktur _ für einen gebundenen Socket zurückzugeben. Informationen im lpcsaBuffer-Member werden vom System verwendet, um das Bluetooth ProtocolDescriptorList-SDP-Attribut zu erstellen. Das in lpcsaBuffer bereitgestellte Protokoll und der Port müssen eindeutig sein (nicht zuvor registriert) und werden verwendet, um den Datensatz für nachfolgende Aufrufe zum Löschen zu indizieren. Wird verwendet, um das Bluetooth ProtocolDescriptorList-Attribut des SDP-Datensatzes zu erstellen. Keine.
lpBlob Optional. Zeiger auf eine BLOB-Struktur, die auf eine BTH _ SET _ SERVICE-Struktur zeigt, sodass der Client eine Bluetooth spezifische Struktur bereitstellen kann, die einen von der Anwendung erstellten binären SDP-Datensatz enthält. Wenn lpBlob für die WSASetService-Funktion bereitgestellt wird, werden alle anderen Member der WSAQUERYSET-Struktur außer dwSize und dwNameSpace ignoriert. Weitere Informationen finden Sie unter Bluetooth und BLOB. Die Übermittlung eines binären SDP-Datensatzes ist in vielen Fällen erforderlich, da eine begrenzte Anzahl von SDP-Attributen aus der WSAQUERYSET-Struktur konvertiert werden kann und Zeichenfolgen nur in die UTF-8-Standardsprache konvertiert werden. Wenn die optionalen BLOB- und BTH _ SET _ SERVICE-Strukturen bei der Eingabe zusammen mit den ULONG-Version- und HANDLE-Werten bereitgestellt wurden, auf die von BTH _ SET _ SERVICE verwiesen werden muss, wird die Version so aktualisiert, dass sie den _ _ BTH-SDP-VERSION-Wert für den Bluetooth Windows Sockets-Anbieter enthält, und das Handle wird bereitgestellt, was erforderlich ist, um den Datensatz anschließend zu löschen.

Hinweis

Um einen Dienst zu entfernen, sind die einzigen erforderlichen Member in der BTH _ SET _ SERVICE-Struktur die Member pSdpVersion und pRecordHandle.

Bluetooth und WSAQUERYSET für Geräteabfragen

Bluetooth und WSAQUERYSET für Dienstabfragen

Bluetooth und BLOB

Bluetooth und WSASetService

BLOB

BTH _ SET _ SERVICE

CSADDR _ INFO

getsockname

SOCKADDR _ BTH

WSAQUERYSET

Windows-Sockets