Bluetooth и WSAQUERYSET для запроса на обслуживание
Bluetooth использует структуру WSAQUERYSET с различными функциями, чтобы упростить обнаружение устройств и служб в пространстве имен Bluetooth, NS_BTH.
Функции WSALookupServiceBegin и WSALookupServiceNext используют структуру WSAQUERYSET для получения данных о процессе запроса службы. В следующей таблице описывается, как задать значения элементов в структуре WSAQUERYSET для этой цели.
Элемент | Входные данные в WSALookupServiceBegin | Возвращенное значение из WSALookupServiceNext |
---|---|---|
dwSize | Необходимо задать значение sizeof(WSAQUERYSET). | sizeof(WSAQUERYSET), возвращаемый системой. |
dwOutputFlags | Не используется. | Не используется. |
lpszServiceInstanceName | Не используется. | Отображаемое имя службы, преобразованное в кодировку UTF-8 из кодировки языка по умолчанию атрибута SDP Bluetooth ServiceName. Возвращается, если указан LUP_RETURN_NAME. |
lpServiceClassId | Обязательный. Самый конкретный отдельный UUID Bluetooth для служб, для которых выполняется поиск. Например, если для этого значения задано значение UUID протокола L2CAP, он возвращает все службы, использующие протокол L2CAP на целевом устройстве. Если задано значение UUID определенной службы, он вернет только экземпляры этой службы. | Не используется. |
lpVersion | Не используется. | Не используется. |
lpszComment | Не используется. | Описание службы, преобразованной в кодировку UTF-8 из кодировки языка по умолчанию атрибута SDP Bluetooth ServiceDescription. Возвращается, если указан LUP_RETURN_COMMENT . |
dwNameSpace | Должно быть NS_BTH. | Возвращает NS_BTH. |
lpNSProviderId | Не используется. | Не используется. |
lpszContext | Обязательный. Адрес устройства Bluetooth, с помощью которого необходимо установить подключение SDP и запросить службы. Это значение должно быть строкой, преобразованной с помощью вызова функции WSAAddressToString. Если указан локальный адрес устройства Bluetooth, выполняется поиск в локальной базе данных SDP. | Не используется. |
dwNumberOfProtocols | Не используется. | Не используется. |
lpafpProtocols | Не используется. | Не используется. |
lpszQueryString | Не используется. | Не используется. |
dwNumberOfCsAddrs | Не используется. | Указывает количество элементов в массиве CSADDR_INFO структур. |
lpcsaBuffer | Не используется. | Указатель на структуру CSADDR_INFO, член LocalAddr.lpSockaddr указывает на SOCKADDR_BTH, содержащий полный адрес удаленной службы, преобразованный из первой записи атрибута SDP Bluetooth ProtocolDescriptorList. Возвращается, если указан LUP_RETURN_ADDR . |
lpBlob | Необязательно. Указатель на структуру BTH_QUERY_SERVICE , содержащую расширенные параметры, чтобы ограничить результаты поиска. Если это указано, lpServiceClassId игнорируется и кэшированные запросы не выполняются. |
|
См. также
-
Bluetooth и WSALookupServiceNext