Partager via


fonction HidP_GetScaledUsageValue (hidpi.h)

La routine HidP_GetScaledUsageValue retourne le résultat signé et mis à l’échelle d’une valeur de contrôle HID extraite d’un rapport HID.

Syntaxe

NTSTATUS HidP_GetScaledUsageValue(
  [in]  HIDP_REPORT_TYPE     ReportType,
  [in]  USAGE                UsagePage,
  [in]  USHORT               LinkCollection,
  [in]  USAGE                Usage,
  [out] PLONG                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 HID qui contient la valeur d’utilisation HID .

[in] UsagePage

Spécifie la page d’utilisation de la valeur à extraire.

[in] LinkCollection

Spécifie l’identificateur de collection de liens de la valeur à extraire. Une valeur LinkCollection de zéro identifie la collection de niveau supérieur.

[in] Usage

Spécifie l’utilisation de la valeur à extraire.

[out] UsageValue

Pointeur vers la mémoire tampon dans laquelle la routine retourne la valeur signée et mise à l’échelle.

[in] PreparsedData

Pointeur vers les données préparées de la collection de niveau supérieur qui a généré le rapport situé dans Rapport.

[in] Report

Pointeur vers le rapport qui contient l’utilisation.

[in] ReportLength

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

Valeur retournée

HidP_GetScaledUsageValue retourne l’une des valeurs status suivantes :

Code de retour Description
HIDP_STATUS_SUCCESS
La routine a correctement retourné la valeur.
HIDP_STATUS_INVALID_REPORT_TYPE
Le type de rapport spécifié n’est pas valide.
HIDP_STATUS_INVALID_REPORT_LENGTH
La longueur de rapport spécifiée n’est pas valide
HIDP_STATUS_BAD_LOG_PHY_VALUES
La collection a retourné une valeur logique ou physique non valide. Pour extraire la valeur retournée par la collection, appelez HidP_GetUsageValue.
HIDP_STATUS_NULL
L’état actuel de la valeur mise à l’échelle de la collection est inférieur au minimum logique ou supérieur au maximum logique, et la valeur mise à l’échelle a un état NULL .
HIDP_STATUS_VALUE_OUT_OF_RANGE
L’état actuel des données de valeur mises à l’échelle de la collection est inférieur au minimum logique ou supérieur à la valeur maximale logique.
HIDP_STATUS_USAGE_NOT_FOUND
L’utilisation, la page d’utilisation ou la collection de liens spécifiée ne se trouve dans aucun rapport pris en charge par la collection de niveau supérieur spécifiée.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
La valeur spécifiée n’est pas contenue dans le rapport spécifié, mais est contenue dans un autre rapport pris en charge par la collection de niveau supérieur spécifiée.

Remarques

Les mémoires tampons allouées à l’appelant fournies dans PreparsedData, UsageValue et Report doivent être allouées à partir d’un pool non paginé.

Les applications en mode utilisateur et les pilotes en mode noyau doivent utiliser HidP_GetUsageValueArray pour extraire des données pour un tableau de valeurs d’utilisation.

Si la routine retourne status HIDP_STATUS_BAD_LOG_PHY_VALUES, une application ou un pilote peut appeler HidP_GetUsageValue pour extraire les données d’utilisation brutes.

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_GetUsageValue

HidP_GetUsageValueArray

_HIDP_PREPARSED_DATA