Bluetooth и WSALookupServiceBegin для запроса устройства

В этом разделе описывается использование функции WSALookupServiceBegin для выполнения запроса как видимых, так и призраков устройств. Дополнительные сведения см. в обнаружении устройств и служб Bluetooth.

Функция WSALookupServiceBegin использует структуру WSAQUERYSET в своем первом параметре, lpqsRestrictionsдля определения критериев поиска. Bluetooth предоставляет конкретные рекомендации по использованию функции WSALookupServiceBegin и WSAQUERYSET.

В следующей таблице перечислены ограничения, которые применяются к структуре WSAQUERYSET, переданной в параметр lpqsRestrictions при запросе устройств.

Член WSAQUERYSET Ограничение
dwSize Установите значение sizeof(WSAQUERYSET).
lpBlob Этот элемент содержит необязательный указатель на структуру BLOB. Если этот элемент указан, допустимые параметры запроса устройства для LUP_FLUSHCACHE приведены следующим образом:
  • Элемент cbSize структуры BLOB должен быть размера(BTH_QUERY_DEVICE).
  • Элемент pBlobData является указателем на структуру BTH_QUERY_DEVICE, для которой элемент LAP является кодом доступа к запросу Bluetooth, а длина члена — это длина запроса в секундах.
dwNameSpace Установите значение NS_BTH.
Другие члены Другие члены структуры WSAQUERYSET игнорируются.

 

Флаги, перечисленные в следующей таблице, используются в параметре dwControlFlags для управления результатами запроса. Флаги LUP_CONTAINERS и LUP_FLUSHCACHE используют ся функцией WSALookupServiceBegin; Остальные флаги используются в вызовах функции WSALookupServiceNex t.

Флаг Результат
LUP_CONTAINERS Указывает, что цель запроса — получить список устройств Bluetooth, а не список служб. Этот флаг должен быть задан.
LUP_FLUSHCACHE Вызывает запрос локальных устройств или приводит к возврату кэшированных результатов из предыдущих запросов.
LUP_RETURN_TYPE Верните КОД Bluetooth (класс битов устройств) непосредственно в элементе lpServiceClassId элемента структуры WSAQUERYSET. КОД сопоставляется с элементом GUID Data1.
LUP_RES_SERVICE Возвращает сведения для локального адреса Bluetooth. Этот флаг действует только в том случае, если LUP_RETURN_ADDR также указан.
LUP_RETURN_NAME Возвращает отображаемое имя устройства в элементе lpszServiceInstanceNameструктуре WSAQUERYSET для каждого вызова функции WSALookupServiceNext. Этот флаг также необходимо указать, чтобы получить имя член структуры BTH_DEVICE_INFO при указании флага LUP_RETURN_BLOB.
LUP_RETURN_ADDR Возвращает SOCKADDR_BTH структуру, содержащую 48-разрядный адрес однорангового узла в элементе lpcsaBuffer члена структуры WSAQUERYSET для каждого вызова функции WSALookupServiceNex t. Другие элементы в структуре SOCKADDR_BTH будут пустыми.
LUP_RETURN_BLOB Возвращает структуру BTH_DEVICE_INFO для каждого последующего вызова WSALookupServiceNext.
LUP_FLUSHPREVIOUS Пропустите следующее доступное устройство и верните следующее за ним устройство.

 

Bluetooth и WSALookupServiceBegin для обнаружения служб

Bluetooth и WSALookupServiceNext

Bluetooth и WSAQUERYSET для запроса устройств

обнаружение устройств и служб Bluetooth

WSALookupServiceBegin

WSALookupServiceNext

WSALookupServiceEnd

BLOB

BTH_QUERY_DEVICE

SOCKADDR_BTH

WSAQUERYSET

сокеты Windows