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 Do UserBuffer>.
Comprimento do buffer de entrada
O tamanho do OutputBufferLength
Buffer de saída
O minidriver HID preenche o buffer residente do sistema apontado pelo >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:
- de Informações é definido como o número de bytes transferidos do dispositivo.
- 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.
Observações
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 moda 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 para o host, considerando as alterações no estado à medida que essas alterações ocorrem.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | hidport.h (inclua Hidport.h) |