Condividi tramite


IOCTL_INTERNAL_BTH_SUBMIT_BRB IOCTL (bthioctl.h)

I driver di profilo usano IOCTL_INTERNAL_BTH_SUBMIT_BRB per inviare un blocco di richieste Bluetooth (BRB) allo stack di driver Bluetooth.

Codice principale

IRP_MJ_INTERNAL_DEVICE_CONTROL

Buffer di input

Il Parameters.Others.Argument1 membro punta all'indirizzo di un'istanza della struttura che corrisponde al BRB che il driver del profilo intende rilasciare. Nell'elenco seguente vengono descritte le strutture che corrispondono a database BRB specifici.

Blocco richieste Bluetooth (BRB) Struttura corrispondente
BRB_HCI_GET_LOCAL_BD_ADDR

_BRB_GET_LOCAL_BD_ADDR

BRB_L2CA_REGISTER_SERVER

_BRB_L2CA_REGISTER_SERVER

BRB_L2CA_UNREGISTER_SERVER _BRB_L2CA_UNREGISTER_SERVER
BRB_L2CA_OPEN_CHANNEL

_BRB_L2CA_OPEN_CHANNEL

BRB_L2CA_OPEN_CHANNEL_RESPONSE

_BRB_L2CA_OPEN_CHANNEL

BRB_L2CA_CLOSE_CHANNEL

_BRB_L2CA_CLOSE_CHANNEL

BRB_L2CA_ACL_TRANSFER

_BRB_L2CA_ACL_TRANSFER

BRB_L2CA_UPDATE_CHANNEL

_BRB_L2CA_UPDATE_CHANNEL

BRB_L2CA_PING

_BRB_L2CA_PING

BRB_REGISTER_PSM

_BRB_PSM

BRB_UNREGISTER_PSM

_BRB_PSM

BRB_SCO_REGISTER_SERVER

_BRB_SCO_REGISTER_SERVER

BRB_SCO_UNREGISTER_SERVER

_BRB_SCO_UNREGISTER_SERVER

BRB_SCO_OPEN_CHANNEL

_BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

_BRB_SCO_OPEN_CHANNEL

BRB_SCO_CLOSE_CHANNEL

_BRB_SCO_CLOSE_CHANNEL

BRB_SCO_TRANSFER

_BRB_SCO_TRANSFER

BRB_SCO_GET_CHANNEL_INFO

_BRB_SCO_GET_CHANNEL_INFO

BRB_SCO_GET_SYSTEM_INFO

_BRB_SCO_GET_SYSTEM_INFO

BRB_SCO_FLUSH_CHANNEL

_BRB_SCO_FLUSH_CHANNEL

BRB_ACL_GET_MODE

_BRB_ACL_GET_MODE

BRB_ACL_ENTER_ACTIVE_MODE

_BRB_ACL_ENTER_ACTIVE_MODE

BRB_GET_DEVICE_INTERFACE_STRING _BRB_GET_DEVICE_INTERFACE_STRING

Lunghezza del buffer di input

Lunghezza della struttura.

Buffer di output

Se BRB restituisce l'output, Parameters->Others.Argument1 punta allo stesso BRB passato come input. L'output viene restituito nei membri della struttura BRB associata o nei buffer specificati nella struttura BRB.

Lunghezza del buffer di output

Lunghezza della struttura

Blocco di stato

Se la richiesta ha esito positivo, il membro informazioni della struttura STATUS_BLOCK viene impostato sulle dimensioni, in byte, del blocco di richieste Bluetooth inviato. In caso contrario, il membro Informazioni è impostato su zero.

Il membro Status è impostato su uno dei valori della tabella seguente.

Valore di stato Descrizione
STATUS_SUCCESS L'IOCTL è stato completato correttamente.
STATUS_INVALID_DEVICE_REQUEST La richiesta inviata al dispositivo remoto tramite la struttura BRB non è valida.
STATUS_INVALID_PARAMETER Uno o più parametri di input non sono validi.
STATUS_INVALID_BUFFER_SIZE o
STATUS_BUFFER_TOO_SMALL
La lunghezza del buffer fornito era troppo piccola.
STATUS_NOT_IMPLEMENTED Lo stack non ha implementato il modulo necessario per elaborare BRB.
STATUS_NOT_SUPPORTED Lo stack non supporta questo BRB.
STATUS_PENDING BRB è in sospeso.

Osservazioni

I driver di profilo usano BRB per gestire la maggior parte delle attività di input, output e connessione. Per queste attività vengono definiti diversi BRB e ognuno usa una struttura specifica e corrispondente. Tutti i database brb condividono un'intestazione comune, che contiene il tipo di BRB. Lo stack di driver Bluetooth usa l'intestazione BRB per interpretare correttamente il resto di BRB. Per altre informazioni sulle intestazioni BRB, vedere la struttura BRB_HEADER.

Per altre informazioni sul modo in cui i driver di profilo usano i DATABASE per comunicare con lo stack di driver Bluetooth, vedere Building and Sending a BRB.For more information about how profile drivers use BRBs to communicate with the Bluetooth driver stack, see Building and Sending a BRB.

Questi BRB devono essere chiamati in irQL <= PASSIVE_LEVEL.

Fabbisogno

Requisito Valore
client minimo supportato Versioni:_Supported in Windows Vista e versioni successive.
intestazione bthioctl.h (include BthIoctl.h)
IRQL <= PASSIVE_LEVEL

Vedere anche

BRB_HEADER

BRB_TYPE

compilazione e invio di un BRB