Condividi tramite


IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS IOCTL (hidclass.h)

La IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS richiesta ottiene le dimensioni della coda del report di input per una raccolta di livello superiore.

La coda del report di input viene implementata come buffer anello. Se una raccolta trasmette i dati al driver di classe HID più velocemente rispetto ai report di input letti, i report possono essere persi. Le dimensioni della coda del report di input possono essere modificate usando IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS.

Per informazioni generali sui dispositivi HIDClass, vedere Raccolte HID.

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Parameters.DeviceIoControl.OutputBufferLength nella posizione dello stack I/O dell'IRP indica le dimensioni, in byte, del buffer di output, che deve essere >= sizeof(ULONG).

Lunghezza del buffer di input

Le dimensioni del buffer sono sizeof(ULONG).

Buffer di output

Irp->AssociateIrp.SystemBuffer punta a un buffer che riceverà le dimensioni della coda di input del report.

Lunghezza del buffer di output

Le dimensioni del buffer sono sizeof(ULONG).

Blocco dello stato

Il driver di classe HID imposta i campi seguenti di Irp-IoStatus>:

  • Le informazioni vengono impostate su sizeof(ULONG) se le dimensioni della coda di input del report vengono recuperate correttamente.
  • Lo stato è impostato su STATUS_SUCCESS se il trasferimento è stato completato senza errore. In caso contrario, è impostato su un codice di errore NTSTATUS appropriato.

Requisiti

Requisito Valore
Intestazione hidclass.h (include Hidclass.h)

Vedi anche

HidD_SetNumInputBuffers