共用方式為


IOCTL_HID_READ_REPORT IOCTL (hidport.h)

IOCTL_HID_READ_REPORT要求會將輸入報告從 HIDClass 裝置傳輸到 HID 類別驅動程式的緩衝區。

如需 HIDClass 裝置的一般資訊,請參閱 HID 集合

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

Parameters.DeviceIoControl.OutputBufferLength 包含 Irp->UserBuffer所提供的緩衝區大小。

輸入緩衝區長度

OutputBufferLength 的大小

輸出緩衝區

HID minidriver 會填入 Irp->UserBuffer 所指向的系統常駐緩衝區, 從裝置擷取的報告數據。

輸出緩衝區長度

UserBuffer 的大小

狀態區塊

對裝置執行 I/O 的 HID 迷你驅動程式會設定下列欄位,Irp->IoStatus

  • 資訊 會設定為從裝置傳輸的位元元組數目。
  • 如果傳輸未發生錯誤,狀態 會設定為STATUS_SUCCESS。 否則,它會設定為適當的NTSTATUS錯誤碼。
使用此 IRP 呼叫其他驅動程式的 HID 迷你驅動程式,以執行其裝置的 I/O,應確保狀態區塊的 [資訊] 欄位正確無誤,而不會變更 [狀態] 欄位的內容。

言論

IOCTL_HID_READ_REPORT通常用於持續完成裝置所傳送的輸入報告。 這個 IOCTL 是由 HID 類別驅動程式 (HIDCLASS) 以乒乓球的方式發送。 換句話說,一旦完成要求(已完成),就可以將另一個要求傳送到裝置,以便持續報告數據。 這是一種「異步」機制,因此,例如,裝置可以使用它將數據傳送至主機,當發生這些變更時的狀態變更。

要求

要求 價值
標頭 hidport.h (包括 Hidport.h)

另請參閱

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