Bluetooth et WSALookupServiceBegin pour device Inquiry

Cette rubrique explique comment utiliser la fonction WSALookupServiceBegin pour effectuer une enquête sur les appareils visibles et fantômes. Pour plus d’informations, consultez Découverte des appareils et services Bluetooth.

La fonction WSALookupServiceBegin utilise une structure WSAQUERYSET dans son premier paramètre, lpqsRestrictions, pour définir des critères de recherche. Bluetooth fournit des instructions spécifiques pour l’utilisation de la fonction WSALookupServiceBegin et WSAQUERYSET.

Le tableau suivant répertorie les restrictions qui s’appliquent à la structure WSAQUERYSET passées au paramètre lpqsRestrictions lors de l’interrogation des appareils.

Membre WSAQUERYSET Restriction
dwSize Défini sur sizeof(WSAQUERYSET).
lpBlob Ce membre contient un pointeur facultatif vers une structure BLOB . Si ce membre est spécifié, les paramètres d’interrogation d’appareil valides pour LUP_FLUSHCACHE sont les suivants :
  • Le membre cbSize de la structure BLOB doit être sizeof(BTH_QUERY_DEVICE).
  • Le membre pBlobData est un pointeur vers une structure BTH_QUERY_DEVICE , pour laquelle le membre LAP est le code d’accès de l’enquête Bluetooth, et le membre de longueur est la longueur, en secondes, de l’enquête.
dwNameSpace Définissez sur NS_BTH.
Autres membres Les autres membres de la structure WSAQUERYSET sont ignorés.

 

Les indicateurs répertoriés dans le tableau suivant sont utilisés dans le paramètre dwControlFlags pour contrôler les résultats de la requête. Les indicateurs LUP_CONTAINERS et LUP_FLUSHCACHE sont utilisés par la fonction WSALookupServiceBegin ; les autres indicateurs sont utilisés dans les appels à la fonction WSALookupServiceNext .

Indicateur Résultats
LUP_CONTAINERS Spécifie que l’objectif de la requête est d’obtenir une liste d’appareils Bluetooth et non une liste de services. Cet indicateur doit être défini.
LUP_FLUSHCACHE Déclenche une enquête sur les appareils locaux ou provoque le retour des résultats mis en cache des requêtes précédentes.
LUP_RETURN_TYPE Retourne la cod Bluetooth (classe de bits de périphérique) directement dans le membre lpServiceClassId de la structure WSAQUERYSET . La cod est mappée au membre Data1 du GUID.
LUP_RES_SERVICE Retourne les informations de l’adresse Bluetooth locale. Cet indicateur a un effet uniquement si LUP_RETURN_ADDR est également spécifié.
LUP_RETURN_NAME Retourne le nom complet de l’appareil dans le membre lpszServiceInstanceName de la structure WSAQUERYSET pour chaque appel à la fonction WSALookupServiceNext . Cet indicateur doit également être spécifié pour récupérer le membre de nom de la structure BTH_DEVICE_INFO lors de la spécification de l’indicateur LUP_RETURN_BLOB .
LUP_RETURN_ADDR Retourne une structure SOCKADDR_BTH qui contient l’adresse 48 bits de l’homologue dans le membre lpcsaBuffer de la structure WSAQUERYSET pour chaque appel à la fonction WSALookupServiceNext . Les autres membres de la structure SOCKADDR_BTH seront vides.
LUP_RETURN_BLOB Retourne la structure BTH_DEVICE_INFO à chaque appel suivant à WSALookupServiceNext.
LUP_FLUSHPREVIOUS Ignorez l’appareil disponible suivant et retournez l’appareil qui le suit.

 

Bluetooth et WSALookupServiceBegin pour la découverte de services

Bluetooth et WSALookupServiceNext

Bluetooth et WSAQUERYSET pour la recherche d’appareil

Détection des appareils et services Bluetooth

WSALookupServiceBegin

WSALookupServiceNext

WSALookupServiceEnd

BLOB

BTH_QUERY_DEVICE

SOCKADDR_BTH

WSAQUERYSET

Windows Sockets