IOCTL_HID_READ_REPORT IOCTL (hidport.h)
El IOCTL_HID_READ_REPORT solicitud transfiere un informe de entrada de un dispositivo HIDClass al búfer del controlador de clase HID.
Para obtener información general sobre los dispositivos HIDClass, consulte Colecciones HID.
Código principal
Búfer de entrada
Parameters.DeviceIoControl.OutputBufferLength contiene el tamaño del búfer proporcionado en Irp-UserBuffer>.
Longitud del búfer de entrada
Tamaño de OutputBufferLength
Búfer de salida
El minidriver HID rellena el búfer residente del sistema al que apunta Irp-UserBuffer> con los datos del informe recuperados del dispositivo.
Longitud del búfer de salida
Tamaño de UserBuffer.
Bloque de estado
Minidrivers HID que llevan a cabo la E/S en el dispositivo establecen los siguientes campos de Irp-IoStatus>:
- La información se establece en el número de bytes transferidos desde el dispositivo.
- El estado se establece en STATUS_SUCCESS si la transferencia se completó sin error. De lo contrario, se establece en un código de error NTSTATUS adecuado.
Comentarios
IOCTL_HID_READ_REPORT se usa normalmente para completar continuamente los informes de entrada enviados por el dispositivo. El controlador de clase HID (HIDCLASS) envía este IOCTL de forma ping-pong. En otras palabras, en cuanto se complete una solicitud (completada), se puede enviar otra al dispositivo, lo que permite la generación continua de informes de datos. Se trata de un mecanismo "asincrónico", por lo que, por ejemplo, el dispositivo puede usarlo para enviar datos hasta el host, con respecto a los cambios en estado a medida que se producen esos cambios.
Requisitos
Requisito | Valor |
---|---|
Header | hidport.h (include Hidport.h) |