fonction HidP_GetUsages (hidpi.h)

La routine HidP_GetUsages retourne une liste de toutes les utilisations du bouton de contrôle HID qui se trouvent sur une page d’utilisation spécifiée et qui sont définies sur ON dans un rapport HID.

Syntaxe

NTSTATUS HidP_GetUsages(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USAGE                UsagePage,
  [in]      USHORT               LinkCollection,
  [out]     PUSAGE               UsageList,
  [in, out] PULONG               UsageLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [out]     PCHAR                Report,
  [in]      ULONG                ReportLength
);

Paramètres

[in] ReportType

Spécifie une valeur d’énumérateur HIDP_REPORT_TYPE qui identifie le type de rapport.

[in] UsagePage

Spécifie la page d’utilisation des utilisations du bouton. La routine retourne uniquement des informations sur les boutons de cette page d’utilisation.

[in] LinkCollection

Spécifie la collection de liens des utilisations du bouton. Si LinkCollection est différent de zéro, la routine retourne uniquement des informations sur les boutons que contient cette collection de liens ; sinon, si LinkCollection est égal à zéro, la routine retourne des informations sur tous les boutons de la collection de niveau supérieur associée à PreparsedData.

[out] UsageList

Pointeur vers une mémoire tampon allouée à l’appelant que la routine utilise pour renvoyer les utilisations de tous les boutons qui sont définis sur ON et appartiennent à la page d’utilisation spécifiée par UsagePage.

[in, out] UsageLength

Spécifie, lors de l’entrée, la longueur, dans les éléments tableaux, de la mémoire tampon UsageList . Spécifie, lors de la sortie, le nombre de boutons définis sur ACTIVÉ sur la page d’utilisation spécifiée.

[in] PreparsedData

Pointeur vers les données préparées d’une collection de niveau supérieur.

[out] Report

Pointeur vers un rapport.

[in] ReportLength

Spécifie la longueur, en octets, du rapport situé dans Rapport.

Valeur retournée

HidP_GetUsages retourne l’une des valeurs status suivantes :

Code de retour Description
HIDP_STATUS_SUCCESS
La routine a retourné avec succès toutes les utilisations de bouton définies sur ON.
HIDP_INVALID_REPORT_LENGTH
La longueur du rapport n’est pas valide.
HIDP_INVALID_REPORT_TYPE
Le type de rapport spécifié n’est pas valide.
HIDP_STATUS_BUFFER_TOO_SMALL
La mémoire tampon UsageList est trop petite pour contenir toutes les utilisations actuellement définies sur ON sur la page d’utilisation spécifiée.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
La collection contient des boutons sur la page d’utilisation spécifiée dans un rapport du type spécifié, mais il n’existe aucune utilisation de ce type dans le rapport spécifié.
HIDP_STATUS_INVALID_PREPARSED_DATA
Les données préparées ne sont pas valides.
HIDP_STATUS_USAGE_NOT_FOUND
La collection ne contient aucun bouton sur la page d’utilisation spécifiée dans un rapport du type de rapport spécifié.

Remarques

Les applications en mode utilisateur et les pilotes en mode noyau appellent HidP_MaxUsageListLength pour déterminer le nombre maximal de boutons pouvant être retournés pour le type de rapport spécifié. Les applications ou les pilotes peuvent également appeler HidP_GetUsages et définir (*UsageLength) sur zéro pour renvoyer la longueur requise dans UsageLength. En d’autres termes, UsageLength doit être un pointeur valide qui pointe vers une valeur ULONG 0 pour obtenir la longueur requise.

Les applications ou les pilotes déterminent la longueur de rapport requise à partir des membres XxxReportByteLength dans la structure HIDP_CAPS d’une collection de niveau supérieur.

Pour plus d’informations, consultez Collections HID.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows 2000 et versions ultérieures de Windows.
Plateforme cible Universal
En-tête hidpi.h (inclure Hidpi.h)
Bibliothèque Hidparse.lib
IRQL <= DISPATCH_LEVEL

Voir aussi

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsageValueArray

HidP_GetUsagesEx

HidP_MaxUsageListLength

_HIDP_PREPARSED_DATA