Udostępnij przez


Bluetooth i WSAQUERYSET dla ustawiania usługi

Bluetooth używa strukturyWSAQUERYSET, aby ułatwić odnajdywanie urządzeń i usług w przestrzeni nazw Bluetooth NS_BTH.

Funkcja WSASetService używa struktury WSAQUERYSET do rejestrowania lub usuwania wystąpień usługi w przestrzeni nazw Bluetooth. W poniższej tabeli wymieniono wartości składowych w strukturze WSAQUERYSET.

Członek Wymagana wartość (dane wejściowe) Wyjście
dwSize Musi być ustawiona wartość sizeof(WSAQUERYSET). Używany jako mechanizm przechowywania wersji. Żaden.
dwOutputFlags Nieużytne. Żaden.
lpszServiceInstanceName Opcjonalne, ale zalecane. Służy do konstruowania atrybutu Bluetooth ServiceName. Żaden.
lpServiceClassId Wymagane. Identyfikator GUID odpowiadający klasie usługi. Ta wartość powinna odpowiadać identyfikatorowi GUID z dokumentu Numery przypisane przez bluetooth dla znanych profilów lub unikatowym identyfikatorem UUID wygenerowanym przez aplikację dla aplikacji, które nie są oparte na profilach. Służy do konstruowania sekwencji atrybutów ServiceClassIdList z tym jako jedynym elementem członkowskim. Żaden.
lpVersion Nieużytne. Żaden.
lpszComment Fakultatywny. Służy do konstruowania atrybutu ServiceDescription bluetooth. Żaden.
dwNameSpace Przestrzeń nazw, w której należy ograniczyć usługę. Musi być NS_BTH. Żaden.
lpNSProviderId Nie jest to wymagane. Żaden.
lpszContext Nieużytne. Żaden.
dwNumberOfProtocols Nieużytne. Żaden.
lpafpProtocols Nieużytne. Żaden.
lpszQueryString Nieużytne. Żaden.
dwNumberOfCsAddrs Liczba adresów do zarejestrowania. Musi mieć wartość 1. Żaden.
lpcsaBuffer Wymagane, jeśli lpBlob nie zostały wypełnione nieprzetworzonym strumieniem SDP. Wskaźnik do struktury CSADDR_INFO ze strukturą LocalAddr.lpSockaddr elementem członkowskim wskazującym SOCKADDR_BTH, w którym serwer nasłuchuje połączeń. Funkcja getsockname może służyć do zwracania struktury SOCKADDR_BTH dla gniazda powiązanego. Informacje w element członkowski lpcsaBuffer są używane przez system do konstruowania atrybutu Bluetooth ProtocolDescriptorList SDP. Protokół i port podany w lpcsaBuffer muszą być unikatowe (nie wcześniej zarejestrowane) i są używane do indeksowania rekordu do kolejnych wywołań do usunięcia. Służy do konstruowania atrybutu Bluetooth ProtocolDescriptorList rekordu SDP. Żaden.
lpBlob Fakultatywny. Wskaźnik do struktury obiektów blob, która wskazuje na strukturę BTH_SET_SERVICE, umożliwiając klientowi zapewnienie struktury specyficznej dla połączenia Bluetooth zawierającej binarny rekord SDP skonstruowany przez aplikację. Jeśli lpBlob jest udostępniana funkcjiWSASetService, wszystkie inne elementy członkowskie struktury WSAQUERYSET z wyjątkiem dwSize i dwNameSpace są ignorowane. Aby uzyskać więcej informacji, zobacz Bluetooth i blob. Przesyłanie binarnego rekordu SDP jest konieczne w wielu przypadkach, ponieważ można przekonwertować ograniczoną liczbę atrybutów SDP z WSAQUERYSET struktury, a ciągi są konwertowane tylko na domyślne kodowanie UTF-8 języka. Jeśli opcjonalne obiektów blob i struktury BTH_SET_SERVICE zostały dostarczone we danych wejściowych, wraz z wartościami ULONG i HANDLE, które muszą być wskazywane przez BTH_SET_SERVICE, wersja jest aktualizowana tak, aby zawierała wartość BTH_SDP_VERSION dla dostawcy gniazd systemu Windows Bluetooth, i jest dostarczany uchwyt, który jest wymagany do późniejszego usunięcia rekordu.

 

Nuta

Aby usunąć usługę, jedynymi wymaganymi elementami członkowskimi w strukturze BTH_SET_SERVICEpSdpVersion i pRecordHandle członków.

 

bluetooth i WSAQUERYSET na potrzeby zapytań dotyczących urządzeń

Bluetooth i WSAQUERYSET na potrzeby zapytań dotyczących usług

Bluetooth i blob

Bluetooth i WSASetService

obiektów blob

BTH_SET_SERVICE

CSADDR_INFO

getsockname

SOCKADDR_BTH

WSAQUERYSET

Windows Sockets