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 |
---|---|
|
La routine a retourné avec succès toutes les utilisations de bouton définies sur ON. |
|
La longueur du rapport n’est pas valide. |
|
Le type de rapport spécifié n’est pas valide. |
|
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. |
|
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é. |
|
Les données préparées ne sont pas valides. |
|
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 |