Partager via


fonction HidP_SetUsageValueArray (hidpi.h)

La routine HidP_SetUsageValueArray définit un tableau de valeurs d’utilisation de contrôle HID dans un rapport HID spécifié.

Syntaxe

NTSTATUS HidP_SetUsageValueArray(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USAGE                UsagePage,
  [in]      USHORT               LinkCollection,
  [in]      USAGE                Usage,
  [in]      PCHAR                UsageValue,
  [in]      USHORT               UsageValueByteLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [in, out] PCHAR                Report,
  [in]      ULONG                ReportLength
);

Paramètres

[in] ReportType

Spécifie une valeur d’énumérateur HIDP_REPORT_TYPE qui indique le type de rapport HID situé dans Rapport.

[in] UsagePage

Spécifie la page d’utilisation d’une utilisation.

[in] LinkCollection

Spécifie la collection de liens qui contient l’utilisation. Si LinkCollection est différent de zéro, la routine définit uniquement l’utilisation, le cas échéant, dans cette collection de liens. Si LinkCollection est égal à zéro, la routine définit la première utilisation qu’elle trouve dans la collection de niveau supérieur associée à PreparsedData.

[in] Usage

Spécifie l’utilisation.

[in] UsageValue

Pointeur vers une mémoire tampon allouée à l’appelant qui contient les données associées au tableau de valeurs d’utilisation.

[in] UsageValueByteLength

Spécifie la longueur, en octets, de la mémoire tampon UsageValue .

[in] PreparsedData

Pointeur vers les données préparées d’un niveau supérieur.

[in, out] Report

Pointeur vers un rapport HID.

[in] ReportLength

Spécifie la taille, en octets, du rapport HID situé dans Rapport, qui doit être égale à la longueur du rapport pour le type de rapport spécifié que HidP_GetCaps retourne dans la structure HIDP_CAPS d’une collection.

Valeur retournée

HidP_SetUsageValueArray retourne l’une des valeurs status suivantes :

Code de retour Description
HIDP_STATUS_SUCCESS
La routine a correctement défini la valeur d’utilisation.
HIDP_STATUS_INVALID_REPORT_LENGTH
La longueur du rapport n’est pas valide.
HIDP_STATUS_INVALID_REPORT_TYPE
Le type de rapport spécifié n’est pas valide.
HIDP_STATUS_BUFFER_TOO_SMALL
La taille, en octets, de la mémoire tampon UsageValue est trop petite.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
L’utilisation n’existe pas dans le rapport spécifié, mais elle existe dans un autre rapport du type spécifié.
HIDP_STATUS_NOT_VALUE_ARRAY
L’utilisation spécifiée n’est pas un tableau de valeurs d’utilisation.
HIDP_STATUS_INVALID_PREPARSED_DATA
Les données préparées ne sont pas valides.
HIDP_STATUS_REPORT_DOES_NOT_EXIST
Il n’existe aucun rapport du type spécifié.
HIDP_STATUS_NOT_IMPLEMENTED
La taille de rapport des champs de données spécifiés pour le tableau de valeurs d’utilisation n’est pas un multiple de huit bits.
HIDP_STATUS_USAGE_NOT_FOUND
L’utilisation n’existe dans aucun rapport du type de rapport spécifié.

Remarques

La taille requise, en octets, de la mémoire tampon UsageValue 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_SetUsageValueArray prend uniquement en charge les tableaux de valeurs d’utilisation où chaque champ de données du tableau est un multiple de huit bits.

L’appelant doit définir la mémoire tampon UsageValue exactement comme il doit se produire dans le rapport.

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_SetScaledUsageValue

HidP_SetUsageValue

_HIDP_PREPARSED_DATA