Bluetooth y WSALookupServiceBegin for Device Inquiry
En este tema se describe cómo usar la función WSALookupServiceBegin para realizar una consulta de dispositivos visibles y fantasma. Para obtener más información, consulte Detección de dispositivos y servicios Bluetooth.
La función WSALookupServiceBegin usa una estructura WSAQUERYSET en su primer parámetro, lpqsRestrictions, para definir criterios de búsqueda. Bluetooth proporciona instrucciones específicas para el uso de la función WSALookupServiceBegin y WSAQUERYSET.
En la tabla siguiente se enumeran las restricciones que se aplican a la estructura WSAQUERYSET que se pasa al parámetro lpqsRestrictions al consultar los dispositivos.
Miembro WSAQUERYSET | Restricción |
---|---|
dwSize | Establezca en sizeof(WSAQUERYSET). |
lpBlob | Este miembro contiene un puntero opcional a una estructura BLOB . Si se especifica este miembro, los parámetros válidos del dispositivo para LUP_FLUSHCACHE son los siguientes:
|
dwNameSpace | Establezca en NS_BTH. |
Otros miembros | Se omiten otros miembros de la estructura WSAQUERYSET . |
Las marcas enumeradas en la tabla siguiente se usan en el parámetro dwControlFlags para controlar los resultados de la consulta. La función WSALookupServiceBegin usa las marcas LUP_CONTAINERS y LUP_FLUSHCACHE; El resto de las marcas se usan en llamadas a la función WSALookupServiceNext.
Marca | Resultado |
---|---|
LUP_CONTAINERS | Especifica que el propósito de la consulta es obtener una lista de dispositivos Bluetooth y no una lista de servicios. Esta marca debe establecerse. |
LUP_FLUSHCACHE | Desencadena una consulta de dispositivos locales o hace que se devuelvan los resultados almacenados en caché de las consultas anteriores. |
LUP_RETURN_TYPE | Devuelve el CÓDIGO Bluetooth (clase de bits de dispositivo) directamente en el miembro lpServiceClassId de la estructura WSAQUERYSET . El COD se asigna al miembro Data1 del GUID. |
LUP_RES_SERVICE | Devuelve información para la dirección Bluetooth local. Esta marca solo tiene un efecto si también se especifica LUP_RETURN_ADDR . |
LUP_RETURN_NAME | Devuelve el nombre para mostrar del dispositivo en el miembro lpszServiceInstanceName de la estructura WSAQUERYSET para cada llamada a la función WSALookupServiceNext . Esta marca también debe especificarse para recuperar el miembro de nombre de la estructura de BTH_DEVICE_INFO al especificar la marca de LUP_RETURN_BLOB . |
LUP_RETURN_ADDR | Devuelve una estructura SOCKADDR_BTH que contiene la dirección de 48 bits del mismo nivel en el miembro lpcsaBuffer de la estructura WSAQUERYSET para cada llamada a la función WSALookupServiceNext . Otros miembros de la estructura SOCKADDR_BTH estarán vacíos. |
LUP_RETURN_BLOB | Devuelve la estructura BTH_DEVICE_INFO en cada llamada posterior a WSALookupServiceNext. |
LUP_FLUSHPREVIOUS | Omita el siguiente dispositivo disponible y devuelva el dispositivo que lo sigue. |
Temas relacionados