IOCTL_BTHX_WRITE_HCI IOCTL (bthxddi.h)
IOCTL_BTHX_WRITE_HCI используется для записи данных и команд ACL Bluetooth на транспортный уровень.
Основной код
Входной буфер
Драйверы профилей должны использовать 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 |