fonction HidP_GetUsageValueArray (hidpi.h)
La routine HidP_GetUsageValueArray extrait les données associées à un tableau de valeurs d’utilisation de contrôle HID à partir d’un rapport HID.
Syntaxe
NTSTATUS HidP_GetUsageValueArray(
[in] HIDP_REPORT_TYPE ReportType,
[in] USAGE UsagePage,
[in] USHORT LinkCollection,
[in] USAGE Usage,
[in, out] PCHAR UsageValue,
[in] USHORT UsageValueByteLength,
[in] PHIDP_PREPARSED_DATA PreparsedData,
[in] 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 du tableau de valeurs d’utilisation.
[in] LinkCollection
Spécifie la collection de liens qui contient le tableau de valeurs d’utilisation. Si LinkCollection est différent de zéro, la routine recherche uniquement un tableau de valeurs d’utilisation dans cette collection de liens ; sinon, si LinkCollection est égal à zéro, la routine recherche un tableau de valeurs d’utilisation dans la collection de niveau supérieur associée à PreparsedData.
[in] Usage
Spécifie l’utilisation du tableau de valeurs d’utilisation.
[in, out] UsageValue
Pointeur vers une mémoire tampon allouée par l’appelant dans laquelle la routine retourne les données associées au tableau de valeurs d’utilisation.
[in] UsageValueByteLength
Spécifie la longueur, en octets, de la mémoire tampon dans UsageValue.
[in] PreparsedData
Pointeur vers les données préparées d’une collection de niveau supérieur.
[in] Report
Pointeur vers un rapport qui contient des valeurs.
[in] ReportLength
Spécifie la longueur, en octets, du rapport situé dans Rapport.
Valeur retournée
HidP_GetUsageValueArray retourne l’une des valeurs status suivantes :
Code de retour | Description |
---|---|
|
La routine a correctement retourné les données de la valeur. |
|
La longueur du rapport n’est pas valide. |
|
Le type de rapport spécifié n’est pas valide. |
|
L’utilisation demandée n’est pas un tableau de valeurs d’utilisation. |
|
La mémoire tampon UsageValue est trop petite pour contenir l’utilisation demandée. |
|
La collection contient un tableau de valeurs d’utilisation 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 pas de tableau de valeurs d’utilisation sur la page d’utilisation spécifiée dans un rapport du type de rapport spécifié. |
Remarques
La taille requise, en octets, d’UsageValueByteLength est déterminée en multipliant les membres BitSize et ReportCount de la structure HIDP_VALUE_CAPS du tableau de valeurs d’utilisation, et en arrondissant le résultat à l’octet le plus proche.
HidP_GetUsageValueArray définit la mémoire tampon UsageValue dans un ordre peu endien, en commençant par le bit le moins significatif des données de l’utilisation. Les données ne sont pas alignées sur les octets et sont déplacées de telle sorte que le bit le moins significatif des données se trouve au premier bit de la mémoire tampon UsageValue .
HidP_GetUsageValueArray est conçu pour extraire toutes les valeurs d’utilisation d’une utilisation dont le nombre de rapports est supérieur à 1. Pour extraire une utilisation dont le nombre de rapports est égal à 1, utilisez HidP_GetUsageValue.
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 |