Freigeben über


HidP_GetUsageValueArray Funktion (hidpi.h)

Die HidP_GetUsageValueArray Routine extrahiert die Daten, die einem HID-Steuerelement zugeordnet sind, Verwendungswertarray aus einem HID-Bericht.

Syntax

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
);

Parameter

[in] ReportType

Gibt einen HIDP_REPORT_TYPE Enumerationswert an, der den Berichtstyp identifiziert.

[in] UsagePage

Gibt die Verwendungsseite des Verwendungswertarrays an.

[in] LinkCollection

Gibt die Linkauflistung an, die das Verwendungswertarray enthält. Wenn LinkCollection- ungleich Null ist, sucht die Routine nur nach einem Verwendungswertarray in dieser Linksammlung; andernfalls sucht die Routine bei LinkCollection- null nach einem Verwendungswertarray in der Auflistung auf oberster Ebene zugeordnet PreparsedData.

[in] Usage

Gibt die Verwendung des Verwendungswertarrays an.

[in, out] UsageValue

Zeigen Sie auf einen vom Aufrufer zugewiesenen Puffer, in dem die Routine die mit dem Verwendungswertarray verknüpften Daten zurückgibt.

[in] UsageValueByteLength

Gibt die Länge des Puffers in Bytes bei UsageValue-an.

[in] PreparsedData

Zeiger auf die vordefinierten Daten einer Auflistung auf oberster Ebene.

[in] Report

Zeigen Sie auf einen Bericht, der Werte enthält.

[in] ReportLength

Gibt die Länge des Berichts in Bytes an, der sich in Reportbefindet.

Rückgabewert

HidP_GetUsageValueArray gibt einen der folgenden Statuswerte zurück:

Rückgabecode Beschreibung
HIDP_STATUS_SUCCESS
Die Routine hat die Daten des Werts erfolgreich zurückgegeben.
HIDP_INVALID_REPORT_LENGTH
Die Berichtslänge ist ungültig.
HIDP_INVALID_REPORT_TYPE
Der angegebene Berichtstyp ist ungültig.
HIDP_STATUS_NOT_VALUE_ARRAY
Die angeforderte Verwendung ist kein Verwendungswertarray.
HIDP_STATUS_BUFFER_TOO_SMALL
Der UsageValue Puffer ist zu klein, um die angeforderte Verwendung zu speichern.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
Die Auflistung enthält ein Verwendungswertarray auf der angegebenen Verwendungsseite in einem Bericht des angegebenen Typs, aber im angegebenen Bericht gibt es keine derartigen Verwendungen.
HIDP_STATUS_INVALID_PREPARSED_DATA
Die analysierten Daten sind ungültig.
HIDP_STATUS_USAGE_NOT_FOUND
Die Auflistung enthält kein Verwendungswertarray auf der angegebenen Verwendungsseite in einem Bericht des angegebenen Berichtstyps.

Bemerkungen

Die erforderliche Größe von UsageValueByteLength- wird durch Multiplizieren der BitSize und ReportCount Member der HIDP_VALUE_CAPS Struktur des Verwendungswertarrays bestimmt und das Ergebnis auf das nächste Byte aufgerundet.

HidP_GetUsageValueArray legt den UsageValue- Puffer in kleiner endischer Reihenfolge fest, beginnend mit dem geringsten signifikanten Bit der Nutzungsdaten. Die Daten werden nicht byte ausgerichtet und so verschoben, dass sich das am wenigsten signifikante Bit der Daten am ersten Bit des UsageValue Puffer befindet.

HidP_GetUsageValueArray dient zum Extrahieren aller Verwendungswerte für eine Verwendung, deren Berichtsanzahl größer als 1 ist. Um eine Verwendung zu extrahieren, deren Berichtsanzahl gleich 1 ist, verwenden Sie HidP_GetUsageValue.

Weitere Informationen finden Sie unter HID Collections.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows 2000 und höheren Versionen von Windows.
Zielplattform- Universal
Header- hidpi.h (include Hidpi.h)
Library Hidparse.lib
IRQL- <= DISPATCH_LEVEL

Siehe auch

HIDP_VALUE_CAPS

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsages

HidP_GetUsagesEx

_HIDP_PREPARSED_DATA