Partager via


fonction HidD_GetInputReport (hidsdi.h)

La routine HidD_GetInputReport retourne un rapport d’entrée à partir 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 les 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 par 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 d’ID est égale à zéro.

Valeur de retour

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

Remarques

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

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

  • Si le 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 le 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 demande de IOCTL_HID_GET_INPUT_REPORT.

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

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows XP et versions ultérieures de Windows.
plateforme cible Universel
d’en-tête hidsdi.h (include Hidsdi.h)
bibliothèque Hid.lib
DLL Hid.dll

Voir aussi