Bluetooth и WSALookupServiceBegin для запроса устройства
В этом разделе описывается, как использовать функцию WSALookupServiceBegin для выполнения запроса как видимых, так и фантомных устройств. Дополнительные сведения см. в разделе "Обнаружение устройств и служб Bluetooth".
Функция WSALookupServiceBegin использует структуру WSAQUERYSET в своем первом параметре lpqsRestrictions для определения критериев поиска. Bluetooth предоставляет конкретные рекомендации по использованию функции WSALookupServiceBegin и WSAQUERYSET.
В следующей таблице перечислены ограничения, которые применяются к структуре WSAQUERYSET, переданной параметру lpqsRestrictions при запросе устройств.
Член WSAQUERYSET | Ограничение |
---|---|
dwSize | Задайте для sizeof(WSAQUERYSET). |
lpBlob | Этот элемент содержит необязательный указатель на структуру BLOB . Если этот элемент указан, допустимые параметры запроса устройства для LUP_FLUSHCACHE приведены следующим образом:
|
dwNameSpace | Установите значение NS_BTH. |
Другие члены | Другие члены структуры WSAQUERYSET игнорируются. |
Флаги, перечисленные в следующей таблице, используются в параметре dwControlFlags для управления результатами запроса. Флаги LUP_CONTAINERS и LUP_FLUSHCACHE используются функцией WSALookupServiceBegin; остальные флаги используются в вызовах функции WSALookupServiceNext.
Флаг | Результат |
---|---|
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 для каждого вызова функции WSALookupServiceNext. Другие члены в структуре SOCKADDR_BTH будут пустыми. |
LUP_RETURN_BLOB | Возвращает структуру BTH_DEVICE_INFO при каждом последующем вызове WSALookupServiceNext. |
LUP_FLUSHPREVIOUS | Пропустите следующее доступное устройство и верните следующее за ним устройство. |
См. также