struttura _BRB_PSM (bthddi.h)
La struttura _BRB_PSM descrive un multiplexer protocollo/servizio (PSM) per registrare o annullare la registrazione.
Sintassi
struct _BRB_PSM {
BRB_HEADER Hdr;
USHORT Psm;
};
Members
Hdr
Struttura BRB_HEADER che contiene informazioni sull'oggetto BRB corrente.
Psm
Quando la struttura _BRB_PSM viene passata come input per una chiamata BRB BRB_REGISTER_PSM , si tratta del PSM che il driver del profilo tenta di registrare. Se il driver del profilo imposta questo valore su zero, il psm viene generato dinamicamente. Se il driver del profilo ha specificato zero nell'input BRB_REGISTER_PSM , nell'output questo membro contiene il PSM registrato.
Quando la struttura _BRB_PSM viene passata come input per una chiamata BRB BRB_UNREGISTER_PSM , si tratta del PSM che il driver del profilo tenta di annullare la registrazione. Questo valore deve essere un PSM attualmente registrato. Per altre informazioni sui valori PSM validi, vedere la sezione Osservazioni.
Alcuni PSM sono riservati per l'uso da parte di Windows:
SDP: 0x01
RFCOMM: 0x03
Controllo HID: 0x11
Dati HID: 0x13
BNEP: 0x0F
Commenti
Per registrare un PSM, i driver di profilo devono compilare e inviare una richiesta di BRB_REGISTER_PSM .
Dopo la registrazione di un PSM, il driver del profilo può ricevere notifiche di connessione dai dispositivi remoti e può compilare e inviare BRB_L2CA_OPEN_CHANNEL_RESPONSE richieste di accettazione delle connessioni in ingresso.
Il driver del profilo può specificare un psm specifico o può richiedere che un PSM venga generato dinamicamente specificando PSM_INVALID nel membro Psm . Se il driver del profilo specifica PSM_INVALID, nell'output assegnato psm verrà restituito nel membro Psm della struttura.
Lo stack di driver Bluetooth registra i file PSM per i profili seguenti: HCRP, HID, PAN, SDP e RFCOMM.
Per altre informazioni sui server L2CAP e sui server PSM, vedere Accettazione di Connections L2CAP in un driver di profilo Bluetooth.
I driver di profilo non possono registrare un PSM già registrato da un altro driver. Se si tenta di eseguire questa operazione, verrà restituito un errore STATUS_ALREADY_COMMITTED. La richiesta di BRB_REGISTER_PSM non ha alcun effetto sui record SDP. Dopo la registrazione di un PSM, i driver possono annunciare il PSM tramite SDP inviando IOCTL_BTH_SDP_SUBMIT_RECORD IOCTL.
Per annullare la registrazione di un PSM registrato in precedenza, i driver di profilo devono compilare e inviare una richiesta di BRB_UNREGISTER_PSM . I driver di profilo devono specificare un PSM attualmente registrato. Se un driver di profilo invia una richiesta di BRB_REGISTER_PSM con un valore pari a zero nel membro Psm , il valore PSM assegnato dinamicamente deve essere passato nella richiesta di BRB_UNREGISTER_PSM.
Una richiesta di BRB_UNREGISTER_PSM non ha alcun effetto sui record SDP che tentano di connettersi al PSM. I driver di profilo possono rimuovere i record SDP pertinenti inviando il IOCTL_BTH_SDP_REMOVE_RECORD IOCTL.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Versioni:_Supported in Windows Vista e versioni successive. |
Intestazione | bthddi.h (include Bthddi.h) |