Partager via


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
HIDP_STATUS_SUCCESS
La routine a correctement retourné les données de la valeur.
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_NOT_VALUE_ARRAY
L’utilisation demandée n’est pas un tableau de valeurs d’utilisation.
HIDP_STATUS_BUFFER_TOO_SMALL
La mémoire tampon UsageValue est trop petite pour contenir l’utilisation demandée.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
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é.
HIDP_STATUS_INVALID_PREPARSED_DATA
Les données préparées ne sont pas valides.
HIDP_STATUS_USAGE_NOT_FOUND
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

Voir aussi

HIDP_VALUE_CAPS

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsages

HidP_GetUsagesEx

_HIDP_PREPARSED_DATA