IOCTL_BTHX_WRITE_HCI IOCTL (bthxddi.h)

IOCTL_BTHX_WRITE_HCI используется для записи данных и команд ACL Bluetooth на транспортный уровень.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Драйверы профилей должны использовать KMDF и метод WdfRequestRetrieveInputMemory для получения входных параметров. Например, чтобы получить входной буфер, выполните следующие действия:

Status = WdfRequestRetrieveInputMemory(_Request, &ReqInMemory);

Буфер описывает структуру BTHX_HCI_READ_WRITE_CONTEXT , которая указывает тип записи и данные, связанные с записью.

Дополнительные сведения см. в примерах WDK Bluetooth.

Длина входного буфера

Длина буфера равна размеру структуры BTHX_HCI_READ_WRITE_CONTEXT .

Выходной буфер

Драйверы профилей должны использовать KMDF и метод WdfRequestRetrieveOutputMemory для получения входных параметров. Например, чтобы получить выходной буфер, выполните следующие действия:

Status = WdfRequestRetrieveOutputMemory(_Request, &ReqOutMemory);

Буфер описывает ULONG количества байтов, записанных для входных данных, указанных в структуре BTHX_HCI_READ_WRITE_CONTEXT .

Дополнительные сведения см. в примерах WDK Bluetooth.

Длина выходного буфера

Длина буфера равна размеру ULONG.

Блок состояния

Если запрос выполнен успешно, для элемента Information структуры STATUS_BLOCK устанавливается число байтов в параметре output.

Для элемента Status задано одно из значений в следующей таблице.

Значение состояния Описание
STATUS_SUCCESS IOCTL успешно завершен.

Комментарии

Стек Bluetooth отправляет IOCTL_BTHX_WRITE_HCI для записи данных ACL HCI и команды HCI на контроллер.

Входной буфер указывает на структуру BTHX_HCI_READ_WRITE_CONTEXT, элемент DataLen которой указывает количество байтов в элементе Data . Элемент Type задается в зависимости от того, является ли пакет пакетом команд или пакетом данных ACL.

Требования

Требование Значение
Минимальная версия клиента Поддерживается начиная с Windows 8.
Верхняя часть bthxddi.h
IRQL <= DISPATCH_LEVEL