Windows Driver Kit: Human Input Devices
IOCTL_HID_READ_REPORT
Operation
The IOCTL_HID_READ_REPORT request transfers an input report from a HIDClass device into the HID class driver's buffer.
For general information about HIDClass devices, see HID Concepts, HID Collections, and Operating HID Collections.
Input
Parameters.DeviceIoControl.OutputBufferLength contains the size of the buffer provided at Irp->UserBuffer.
Output
HID minidriver fills the system-resident buffer pointed to by Irp->UserBuffer with the report data retrieved from the device.
I/O Status Block
HID minidrivers that carry out the I/O to the device set the following fields of Irp->IoStatus:
- Information is set to the number of bytes transferred from the device.
- Status is set to STATUS_SUCCESS if the transfer completed without error. Otherwise, it is set to an appropriate NTSTATUS error code.
HID minidrivers that call other drivers with this IRP to carry out the I/O to their device should ensure that the Information field of the status block is correct and not change the contents of the Status field.
Requirements
Headers: Defined in hidport.h. Include hidport.h.
See Also
HidD_GetFeature, HidD_GetInputReport, HidD_SetFeature, HidD_SetOutputReport, IOCTL_HID_GET_FEATURE, IOCTL_HID_GET_INPUT_REPORT, IOCTL_HID_SET_FEATURE, IOCTL_HID_SET_OUTPUT_REPORT, IOCTL_HID_WRITE_REPORT