Bluetooth e WSALookupServiceBegin para consulta de dispositivo
Este tópico descreve como usar a função WSALookupServiceBegin para executar uma consulta de dispositivos visíveis e fantasmas. Para obter mais informações, consulte Descobrindo dispositivos e serviços Bluetooth.
A função WSALookupServiceBegin usa uma estrutura WSAQUERYSET em seu primeiro parâmetro, lpqsRestrictions, para definir critérios de pesquisa. O Bluetooth fornece diretrizes específicas para o uso da função WSALookupServiceBegin e WSAQUERYSET.
A tabela a seguir lista as restrições que se aplicam à estrutura WSAQUERYSET passada para o parâmetro lpqsRestrictions ao consultar dispositivos.
Membro WSAQUERYSET | Restrição |
---|---|
dwSize | Defina como sizeof(WSAQUERYSET). |
lpBlob | Esse membro contém um ponteiro opcional para uma estrutura BLOB . Se esse membro for especificado, os parâmetros de consulta de dispositivo válidos para LUP_FLUSHCACHE são os seguintes:
|
dwNameSpace | Defina como NS_BTH. |
Outros membros | Outros membros da estrutura WSAQUERYSET são ignorados. |
Os sinalizadores listados na tabela a seguir são usados no parâmetro dwControlFlags para controlar os resultados da consulta. Os sinalizadores LUP_CONTAINERS e LUP_FLUSHCACHE são usados pela função WSALookupServiceBegin, o restante dos sinalizadores é usado em chamadas para a função WSALookupServiceNext.
Sinalizador | Resultado |
---|---|
LUP_CONTAINERS | Especifica que a finalidade da consulta é obter uma lista de dispositivos Bluetooth e não uma lista de serviços. Esse sinalizador deve ser definido. |
LUP_FLUSHCACHE | Dispara uma consulta de dispositivos locais ou faz com que os resultados armazenados em cache de consultas anteriores sejam retornados. |
LUP_RETURN_TYPE | Retorne o COD Bluetooth (classe de bits de dispositivo) diretamente no membro lpServiceClassId da estrutura WSAQUERYSET . O COD é mapeado para o membro Data1 do GUID. |
LUP_RES_SERVICE | Retornar informações para o endereço Bluetooth local. Esse sinalizador terá efeito somente se LUP_RETURN_ADDR também for especificado. |
LUP_RETURN_NAME | Retorne o nome de exibição do dispositivo no membro lpszServiceInstanceName da estrutura WSAQUERYSET para cada chamada para a função WSALookupServiceNext. Esse sinalizador também deve ser especificado para recuperar o membro name da estrutura BTH_DEVICE_INFO ao especificar o sinalizador LUP_RETURN_BLOB. |
LUP_RETURN_ADDR | Retorne uma estrutura SOCKADDR_BTH que contém o endereço de 48 bits do par no membro lpcsaBuffer da estrutura WSAQUERYSET para cada chamada para a função WSALookupServiceNext. Outros membros da estrutura SOCKADDR_BTH estarão vazios. |
LUP_RETURN_BLOB | Retorne a estrutura BTH_DEVICE_INFO em cada chamada subsequente para WSALookupServiceNext. |
LUP_FLUSHPREVIOUS | Ignore o próximo dispositivo disponível e retorne o dispositivo que o segue. |
Tópicos relacionados