Condividi tramite


Bluetooth e WSALookupServiceBegin for Device Inquiry

Questo argomento descrive come usare la funzione WSALookupServiceBegin per eseguire una richiesta di dispositivi visibili e fantasma. Per altre informazioni, vedere Individuazione di dispositivi e servizi Bluetooth.

La funzione WSALookupServiceBegin usa una struttura WSAQUERY edizione Standard T nel primo parametro, lpqsRestrictions, per definire i criteri di ricerca. Bluetooth fornisce linee guida specifiche per l'uso della funzione WSALookupServiceBegin e WSAQUERY edizione Standard T.

Nella tabella seguente sono elencate le restrizioni applicabili alla struttura WSAQUERY edizione Standard T passata al parametro lpqsRestrictions durante l'esecuzione di query per i dispositivi.

Membro WSAQUERY edizione Standard T Restrizione
dwSize Impostare su sizeof(WSAQUERY edizione Standard T).
lpBlob Questo membro contiene un puntatore facoltativo a una struttura BLOB. Se si specifica questo membro, i parametri validi di richiesta del dispositivo per LUP_FLUSHCACHE sono i seguenti:
  • Il membro cbSize della struttura BLOB deve essere sizeof(BTH_QUERY_DEVICE).
  • Il membro pBlobData è un puntatore a una struttura BTH_QUERY_DEVICE, per cui il membro LAP è il codice di accesso alla richiesta Bluetooth e il membro di lunghezza è la lunghezza, in secondi, dell'indagine.
dwNameSpace Impostare su NS_BTH.
Altri membri Gli altri membri della struttura WSAQUERY edizione Standard T vengono ignorati.

 

I flag elencati nella tabella seguente vengono usati nel parametro dwControlFlags per controllare i risultati della query. I flag LUP_CONTAINERS e LUP_FLUSHCACHE vengono usati dalla funzione WSALookupServiceBegin. Il resto dei flag viene usato nelle chiamate alla funzione WSALookupServiceNext.

Flag Risultato
LUP_CONTAINERS Specifica che lo scopo della query è ottenere un elenco di dispositivi Bluetooth e non un elenco di servizi. Questo flag deve essere impostato.
LUP_FLUSHCACHE Attiva una richiesta di dispositivi locali o causa la restituzione dei risultati memorizzati nella cache delle query precedenti.
LUP_RETURN_TYPE Restituisce il codice COD Bluetooth (classe di bit del dispositivo) direttamente nel membro lpServiceClassId della struttura WSAQUERY edizione Standard T. Il codice COD viene mappato al membro Data1 del GUID.
LUP_RES_edizione Standard RVICE Restituisce informazioni per l'indirizzo Bluetooth locale. Questo flag ha un effetto solo se viene specificato anche LUP_RETURN_ADDR .
LUP_RETURN_NAME Restituisce il nome visualizzato del dispositivo nel membro lpszServiceInstanceName della struttura WSAQUERY edizione Standard T per ogni chiamata alla funzione WSALookupServiceNext. Questo flag deve essere specificato anche per recuperare il membro del nome della struttura BTH_DEVICE_INFO quando si specifica il flag LUP_RETURN_BLOB .
LUP_RETURN_ADDR Restituisce una struttura SOCKADDR_BTH che contiene l'indirizzo a 48 bit del peer nel membro lpcsaBuffer della struttura WSAQUERY edizione Standard T per ogni chiamata alla funzione WSALookupServiceNext. Gli altri membri della struttura SOCKADDR_BTH saranno vuoti.
LUP_RETURN_BLOB Restituisce la struttura BTH_DEVICE_INFO in ogni chiamata successiva a WSALookupServiceNext.
LUP_FLUSHPREVIOUS Ignorare il dispositivo disponibile successivo e restituire il dispositivo che lo segue.

 

Bluetooth e WSALookupServiceBegin per l'individuazione dei servizi

Bluetooth e WSALookupServiceNext

Bluetooth e WSAQUERY edizione Standard T per richiesta del dispositivo

Individuazione di dispositivi e servizi Bluetooth

WSALookupServiceBegin

WSALookupServiceNext

WSALookupServiceEnd

BLOB

BTH_QUERY_DEVICE

SOCKADDR_BTH

WSAQUERY edizione Standard T

Windows Sockets