Compartilhar via


IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS IOCTL (hidclass.h)

A solicitação IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS obtém o tamanho da fila de relatório de entrada para uma coleção de nível superior.

A fila de relatório de entrada é implementada como um buffer de anel. Se uma coleção transmitir dados para o driver de classe HID mais rapidamente do que os relatórios de entrada forem lidos, os relatórios poderão ser perdidos. O tamanho da fila de relatório de entrada pode ser ajustado usando IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS.

Para obter informações gerais sobre dispositivos HIDClass, consulte Coleções HID.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

Parameters.DeviceIoControl.OutputBufferLength no local da pilha de E/S do IRP indica o tamanho, em bytes, do buffer de saída, que deve ser >= sizeof(ULONG).

Comprimento do buffer de entrada

O tamanho do buffer é sizeof(ULONG).

Buffer de saída

Irp->AssociatedIrp.SystemBuffer aponta para um buffer que receberá o tamanho da fila de entrada do relatório.

Comprimento do buffer de saída

O tamanho do buffer é sizeof(ULONG).

Bloco de status

O driver de classe HID define os seguintes campos de Irp-IoStatus>:

  • As informações serão definidas como sizeof(ULONG) se o tamanho da fila de entrada do relatório for recuperado com êxito.
  • O status será definido como STATUS_SUCCESS se a transferência for concluída sem erro. Caso contrário, ele será definido como um código de erro NTSTATUS apropriado.

Requisitos

Requisito Valor
Cabeçalho hidclass.h (inclua Hidclass.h)

Confira também

HidD_SetNumInputBuffers