IOCTL_HID_READ_REPORT IOCTL (hidport.h)
A solicitação IOCTL_HID_READ_REPORT transfere um relatório de entrada de um dispositivo HIDClass para o buffer do driver de classe HID.
Para obter informações gerais sobre dispositivos HIDClass, consulte Coleções HID.
Código principal
Buffer de entrada
Parameters.DeviceIoControl.OutputBufferLength contém o tamanho do buffer fornecido em Irp-UserBuffer>.
Comprimento do buffer de entrada
O tamanho de OutputBufferLength
Buffer de saída
O minidriver HID preenche o buffer residente do sistema apontado por Irp-UserBuffer> com os dados de relatório recuperados do dispositivo.
Comprimento do buffer de saída
O tamanho do UserBuffer.
Bloco de status
Os minidrivers HID que executam a E/S para o dispositivo definem os seguintes campos de Irp-IoStatus>:
- As informações são definidas como o número de bytes transferidos do dispositivo.
- O status será definido como STATUS_SUCCESS se a transferência for concluída sem erros. Caso contrário, ele será definido como um código de erro NTSTATUS apropriado.
Comentários
IOCTL_HID_READ_REPORT normalmente é usado para concluir continuamente relatórios de entrada enviados pelo dispositivo. Este IOCTL é enviado pelo HIDCLASS (driver de classe HID) na forma de ping-pong. Em outras palavras, assim que uma solicitação for atendida (concluída), outra poderá ser enviada para o dispositivo, permitindo relatórios contínuos de dados. Esse é um mecanismo "assíncrono", portanto, por exemplo, o dispositivo pode usá-lo para enviar dados até o host, em relação a alterações no estado conforme essas alterações ocorrem.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | hidport.h (inclua Hidport.h) |