IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS IOCTL (hidclass.h)

Запрос IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS получает размер очереди входных отчетов для коллекции верхнего уровня.

Очередь входных отчетов реализуется в виде кольцевого буфера. Если коллекция передает данные драйверу класса HID быстрее, чем отчеты ввода считываются, отчеты могут быть потеряны. Размер очереди входных отчетов можно настроить с помощью IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS.

Общие сведения о устройствах HIDClass см. в коллекций HID.

Основной код

IRP_MJ_DEVICE_CONTROL

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

Parameters.DeviceIoControl.OutputBufferLength в расположении стека ввода-вывода iRP указывает размер в байтах выходного буфера, который должен быть >= размер(ULONG).

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

Размер буфера составляет размер(ULONG).

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

Irp->AssociatedIrp.SystemBuffer указывает на буфер, который получит размер очереди входных данных отчета.

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

Размер буфера составляет размер(ULONG).

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

Драйвер класса HID задает следующие поля Irp->IoStatus:

  • сведения заданы для размера(ULONG), если размер очереди входных данных отчета успешно получен.
  • состояние имеет значение STATUS_SUCCESS, если передача завершена без ошибок. В противном случае для него задан соответствующий код ошибки NTSTATUS.

Требования

Требование Ценность
заголовка hidclass.h (include Hidclass.h)

См. также

HidD_SetNumInputBuffers