funzione HidD_GetInputReport (hidsdi.h)

La routine HidD_GetInputReport restituisce un report di input da una raccolta di primo livello.

Utilizzare questa routine solo per ottenere lo stato corrente di una raccolta. Se un'applicazione tenta di utilizzare questa routine per ottenere continuamente report di input, i report possono andare persi. Per altre informazioni, vedere Ottenere report HID dalle applicazioni in modalità utente.

Sintassi

BOOLEAN HidD_GetInputReport(
  [in]  HANDLE HidDeviceObject,
  [out] PVOID  ReportBuffer,
  [in]  ULONG  ReportBufferLength
);

Parametri

[in] HidDeviceObject

Handle aperto per una raccolta di primo livello.

[out] ReportBuffer

Puntatore a un buffer del report di input allocato dal chiamante usato dal chiamante per specificare un ID report HID e HidD_GetInputReport usa per restituire il report di input specificato.

Per altre informazioni su questo parametro, vedere la sezione Osservazioni.

[in] ReportBufferLength

Dimensioni del buffer del report in byte. Il buffer del report deve essere sufficientemente grande da contenere il report di input più un byte aggiuntivo che specifica un ID report. Se l'ID del report non viene usato, il valore ID è zero.

Valore restituito

HidD_GetInputReport restituisce TRUE se ha esito positivo; in caso contrario, restituisce FALSE. Usare GetLastError per ottenere informazioni estese sull'errore.

Commenti

Il valore ReportBufferLength corretto viene specificato dal membro InputReportByteLength della struttura di HIDP_CAPS di una raccolta di livello superiore restituita da HidP_GetCaps chiamata.

Prima di chiamare la routine HidD_GetInputReport , il chiamante deve eseguire le operazioni seguenti:

  • Se la raccolta di livello superiore include ID report, il chiamante deve impostare il primo byte del parametro ReportBuffer su un ID report diverso da zero.
  • Se la raccolta di livello superiore non include ID report, il chiamante deve impostare il primo byte del parametro ReportBuffer su zero.

Il report di input viene restituito nel parametro ReportBuffer . A seconda dell'ID report, il chiamante analizza il report chiamando una delle funzioni seguenti:

Per un esempio di come analizzare un report HID, vedere l'applicazione di esempio HClient .

Solo le applicazioni in modalità utente possono chiamare HidD_GetInputReport. I driver in modalità kernel possono usare una richiesta di IOCTL_HID_GET_INPUT_REPORT.

Per altre informazioni, vedere Interpretazione di report HID.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows XP e versioni successive di Windows.
Piattaforma di destinazione Universale
Intestazione hidsdi.h (include Hidsdi.h)
Libreria Hid.lib
DLL Hid.dll

Vedi anche