Partager via


fonction HidP_GetUsageValue (hidpi.h)

La routine HidP_GetUsageValue extrait les données associées à une valeur de contrôle HID qui correspond aux critères de sélection d’un rapport HID.

Syntaxe

NTSTATUS HidP_GetUsageValue(
  [in]  HIDP_REPORT_TYPE     ReportType,
  [in]  USAGE                UsagePage,
  [in]  USHORT               LinkCollection,
  [in]  USAGE                Usage,
  [out] PULONG               UsageValue,
  [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 de la valeur.

[in] LinkCollection

Spécifie la collection de liens qui contient la valeur. Si LinkCollection est différent de zéro, la routine recherche uniquement l’utilisation dans cette collection de liens ; sinon, si LinkCollection est égal à zéro, la routine recherche l’utilisation dans la collection de niveau supérieur associée à PreparsedData.

[in] Usage

Spécifie l’utilisation de la valeur.

[out] UsageValue

Pointeur vers une mémoire tampon dans laquelle la routine retourne les données de valeur.

[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_GetUsageValue retourne l’une des valeurs status suivantes :

Code de retour Description
HIDP_STATUS_SUCCESS
La routine a correctement retourné les données de 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_INCOMPATIBLE_REPORT_ID
La collection contient une valeur 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 valeur sur la page d’utilisation spécifiée dans un rapport du type de rapport spécifié.

Remarques

HidP_GetUsageValue ne signe pas ni ne met à l’échelle la valeur. Pour extraire une valeur signée, utilisez HidP_GetScaledUsageValue. Pour affecter manuellement le bit de signe, la position du bit de signe peut être déterminée à partir des informations contenues dans la structure HIDP_VALUE_CAPS d’une valeur.

HidP_GetUsageValue est conçu pour extraire une valeur d’utilisation pour une utilisation dont le nombre de rapports est 1. Si l’utilisation spécifiée a un nombre de rapports supérieur à 1, l’utilisation fait partie d’un tableau de valeurs d’utilisation. HidP_GetUsageValue retourne uniquement le premier élément de données d’un tableau de valeurs d’utilisation. Pour extraire tous les éléments de données d’un tableau de valeurs d’utilisation, utilisez HidP_GetUsageValueArray.

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_GetUsageValueArray

HidP_GetUsages

HidP_GetUsagesEx

_HIDP_PREPARSED_DATA