fonction HidD_GetInputReport (hidsdi.h)

La routine HidD_GetInputReport retourne un rapport d’entrée d’une collection de niveau supérieur.

Utilisez cette routine uniquement pour obtenir l’état actuel d’une collection. Si une application tente d’utiliser cette routine pour obtenir en permanence des rapports d’entrée, les rapports peuvent être perdus. Pour plus d’informations, consultez Obtention de rapports HID par des applications en mode utilisateur.

Syntaxe

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

Paramètres

[in] HidDeviceObject

Handle ouvert à une collection de niveau supérieur.

[out] ReportBuffer

Pointeur vers une mémoire tampon de rapport d’entrée allouée à l’appelant que l’appelant utilise pour spécifier un ID de rapport HID et HidD_GetInputReport utilise pour retourner le rapport d’entrée spécifié.

Pour plus d’informations sur ce paramètre, consultez la section Remarques.

[in] ReportBufferLength

Taille de la mémoire tampon de rapport en octets. La mémoire tampon de rapport doit être suffisamment grande pour contenir le rapport d’entrée plus un octet supplémentaire qui spécifie un ID de rapport. Si l’ID de rapport n’est pas utilisé, la valeur de l’ID est égale à zéro.

Valeur retournée

HidD_GetInputReport retourne TRUE s’il réussit ; sinon, il retourne FALSE. Utilisez GetLastError pour obtenir des informations d’erreur étendues.

Remarques

Le bon ReportBufferLength est spécifié par le membre InputReportByteLength de la structure HIDP_CAPS d’une collection de niveau supérieur retourné par HidP_GetCaps appel.

Avant d’appeler la routine HidD_GetInputReport , l’appelant doit effectuer les opérations suivantes :

  • Si la collection de niveau supérieur inclut des ID de rapport, l’appelant doit définir le premier octet du paramètre ReportBuffer sur un ID de rapport différent de zéro.
  • Si la collection de niveau supérieur n’inclut pas d’ID de rapport, l’appelant doit définir le premier octet du paramètre ReportBuffer sur zéro.

Le rapport d’entrée est retourné dans le paramètre ReportBuffer . En fonction de l’ID de rapport, l’appelant analyse le rapport en appelant l’une des fonctions suivantes :

Pour obtenir un exemple d’analyse d’un rapport HID, consultez l’exemple d’application HClient .

Seules les applications en mode utilisateur peuvent appeler HidD_GetInputReport. Les pilotes en mode noyau peuvent utiliser une requête IOCTL_HID_GET_INPUT_REPORT.

Pour plus d’informations, consultez Interprétation des rapports HID.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows XP et les versions ultérieures de Windows.
Plateforme cible Universal
En-tête hidsdi.h (inclure Hidsdi.h)
Bibliothèque Hid.lib
DLL Hid.dll

Voir aussi