Freigeben über


HidP_GetUsageValueArray-Funktion (hidpi.h)

Die HidP_GetUsageValueArray Routine extrahiert die Daten, die einem Array für die Verwendung von HID-Steuerelementen aus einem HID-Bericht zugeordnet sind.

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 Enumeratorwert 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 nichtzero ist, sucht die Routine nur nach einem Verwendungswertarray in dieser Linksammlung. Andernfalls sucht die Routine, wenn LinkCollection null ist, nach einem Verwendungswertarray in der Auflistung der obersten Ebene , die PreparsedData zugeordnet ist.

[in] Usage

Gibt die Verwendung des Verwendungswertarrays an.

[in, out] UsageValue

Zeiger auf einen vom Aufrufer zugewiesenen Puffer, in dem die Routine die Daten zurückgibt, die dem Verwendungswertarray zugeordnet sind.

[in] UsageValueByteLength

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

[in] PreparsedData

Zeiger auf die vorbereiteten Daten einer Sammlung auf oberster Ebene.

[in] Report

Zeiger auf einen Bericht, der Werte enthält.

[in] ReportLength

Gibt die Länge des Berichts in Bytes an, der sich unter Bericht befindet.

Rückgabewert

HidP_GetUsageValueArray gibt einen der folgenden status Werte 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 Nutzung aufzunehmen.
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 solchen Verwendungen.
HIDP_STATUS_INVALID_PREPARSED_DATA
Die vorbereiteten 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.

Hinweise

Die erforderliche Größe von UsageValueByteLength in Bytes wird bestimmt, indem die BitSize - und ReportCount-Member der HIDP_VALUE_CAPS Struktur des Verwendungswertarrays multipliziert und das Ergebnis auf das nächste Byte aufgerundet wird.

HidP_GetUsageValueArray legt den UsageValue-Puffer in little-endian-Reihenfolge fest, beginnend mit dem geringsten Teil der Nutzungsdaten. Die Daten sind nicht bytebündig und werden so verschoben, dass sich das geringste signifikante Bit der Daten im ersten Bit des UsageValue-Puffers befindet.

HidP_GetUsageValueArray ist so konzipiert, dass alle Nutzungswerte für eine Verwendung extrahiert werden, 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-Sammlungen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows 2000 und höheren Versionen von Windows.
Zielplattform Universell
Header hidpi.h (einschließlich Hidpi.h)
Bibliothek Hidparse.lib
IRQL <= DISPATCH_LEVEL

Weitere Informationen

HIDP_VALUE_CAPS

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsages

HidP_GetUsagesEx

_HIDP_PREPARSED_DATA