Condividi tramite


IOCTL_HID_READ_REPORT IOCTL (hidport.h)

La richiesta di IOCTL_HID_READ_REPORT trasferisce un report di input da un dispositivo HIDClass nel buffer del driver di classe HID.

Per informazioni generali sui dispositivi HIDClass, vedere raccolte HID.

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Parameters.DeviceIoControl.OutputBufferLength contiene le dimensioni del buffer fornito in Irp->UserBuffer.

Lunghezza del buffer di input

Dimensioni di OutputBufferLength

Buffer di output

Il minidriver HID riempie il buffer residente del sistema a cui punta Irp->UserBuffer con i dati del report recuperati dal dispositivo.

Lunghezza del buffer di output

Dimensioni dell'UserBuffer di.

Blocco di stato

I minidriver HID che eseguono l'I/O nel dispositivo impostano i campi seguenti di Irp->IoStatus:

  • informazioni è impostato sul numero di byte trasferiti dal dispositivo.
  • stato è impostato su STATUS_SUCCESS se il trasferimento è stato completato senza errori. In caso contrario, è impostato su un codice di errore NTSTATUS appropriato.
I minidriver HID che chiamano altri driver con questo IRP per eseguire l'I/O al dispositivo devono assicurarsi che il campo informazioni del blocco di stato sia corretto e non modificare il contenuto del campo stato.

Osservazioni

IOCTL_HID_READ_REPORT viene in genere usato per completare continuamente i report di input inviati dal dispositivo. Questo IOCTL viene inviato dal driver di classe HID (HIDCLASS) in modalità ping-pong. In altre parole, non appena una richiesta viene soddisfatta (completata), un'altra può essere inviata al dispositivo, consentendo la segnalazione continua dei dati. Si tratta di un meccanismo "asincrono", quindi, il dispositivo può usarlo per inviare dati all'host, in relazione alle modifiche apportate allo stato durante l'esecuzione di tali modifiche.

Fabbisogno

Requisito Valore
intestazione hidport.h (include Hidport.h)

Vedere anche

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