Condividi tramite


Bluetooth e binding

Bluetooth usa la funzione bind per l'associazione a un socket. Per associare un socket Bluetooth, chiamare la funzione bind usando la struttura SOCKADDR_BTH . Usare la struttura SOCKADDR_BTH con le impostazioni seguenti:

name.addressFamily = AF_BTH;
name.btAddr = 0;
name.serviceClassId = GUID_NULL;
name.port = number of service channel, 0 or BT_PORT_ANY;

Nelle applicazioni client, il membro della porta deve essere zero per consentire l'assegnazione di un endpoint locale appropriato. Nelle applicazioni server, il membro della porta deve essere un numero di porta valido o BT_PORT_ANY; le porte assegnate automaticamente tramite BT_PORT_ANY possono essere sottoposte a query successivamente con una chiamata alla funzione getsockname. L'intervallo valido per la richiesta di una porta RFCOMM specifica è compreso tra 1 e 30. I canali server sono risorse globali e solo 30 canali server sono disponibili per RFCOMM in qualsiasi dispositivo Bluetooth, che deve essere condiviso da tutti i Socket Di Windows che appartengono alla famiglia di indirizzi Bluetooth. Se non è disponibile alcun canale server o se il canale del server specificato è già riservato, la chiamata di associazione ha esito negativo.

Al termine dell'associazione, il canale del server viene riservato fino alla chiusura del socket. Usare la funzione getsockname per recuperare il numero di canale per la registrazione SDP.

Le applicazioni devono usare l'allocazione automatica per il canale del server.

La funzione di associazione non annuncia automaticamente l'applicazione server usando il provider di identità Bluetooth. Le applicazioni devono chiamare la funzione WSASetService per essere trovate da applicazioni Bluetooth remote.

Windows Sockets

bind