HidP_GetUsageValueArray (hidpi.h)

Rutinitas HidP_GetUsageValueArray mengekstrak data yang terkait dengan array nilai penggunaan kontrol HID dari laporan HID.

Sintaks

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

Menentukan nilai enumerator HIDP_REPORT_TYPE yang mengidentifikasi jenis laporan.

[in] UsagePage

Menentukan halaman penggunaan array nilai penggunaan.

[in] LinkCollection

Menentukan kumpulan tautan yang berisi array nilai penggunaan. Jika LinkCollection bukan nol, rutinitas hanya mencari array nilai penggunaan dalam koleksi tautan ini; jika tidak, jika LinkCollection adalah nol, rutin mencari array nilai penggunaan dalam koleksi tingkat atas yang terkait dengan PreparsedData.

[in] Usage

Menentukan penggunaan array nilai penggunaan.

[in, out] UsageValue

Penunjuk ke buffer yang dialokasikan penelepon di mana rutinitas mengembalikan data yang terkait dengan array nilai penggunaan.

[in] UsageValueByteLength

Menentukan panjang, dalam byte, dari buffer di UsageValue.

[in] PreparsedData

Penunjuk ke data koleksi tingkat atas yang disiapkan.

[in] Report

Penunjuk ke laporan yang berisi nilai.

[in] ReportLength

Menentukan panjang, dalam byte, dari laporan yang terletak di Laporan.

Nilai kembali

HidP_GetUsageValueArray mengembalikan salah satu nilai status berikut:

Menampilkan kode Deskripsi
HIDP_STATUS_SUCCESS
Rutinitas berhasil mengembalikan data nilai.
HIDP_INVALID_REPORT_LENGTH
Panjang laporan tidak valid.
HIDP_INVALID_REPORT_TYPE
Tipe laporan yang ditentukan tidak valid.
HIDP_STATUS_NOT_VALUE_ARRAY
Penggunaan yang diminta bukan array nilai penggunaan.
HIDP_STATUS_BUFFER_TOO_SMALL
Buffer UsageValue terlalu kecil untuk menahan penggunaan yang diminta.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
Koleksi berisi array nilai penggunaan pada halaman penggunaan yang ditentukan dalam laporan jenis yang ditentukan, tetapi tidak ada penggunaan tersebut dalam laporan yang ditentukan.
HIDP_STATUS_INVALID_PREPARSED_DATA
Data yang disiapkan tidak valid.
HIDP_STATUS_USAGE_NOT_FOUND
Koleksi tidak berisi array nilai penggunaan pada halaman penggunaan yang ditentukan dalam laporan apa pun dari jenis laporan yang ditentukan.

Keterangan

Ukuran yang diperlukan, dalam byte, dari UsageValueByteLength ditentukan dengan mengalikan bersama-sama anggota BitSize dan ReportCount dari struktur HIDP_VALUE_CAPS array nilai penggunaan, dan membulatkan hasil hingga byte terdekat.

HidP_GetUsageValueArray mengatur buffer UsageValue dalam urutan little-endian, dimulai dengan bit data penggunaan yang paling tidak signifikan. Data tidak selaras dengan byte, dan digeser sedemikian sehingga bit data yang paling tidak signifikan terletak di bit pertama buffer UsageValue .

HidP_GetUsageValueArray dirancang untuk mengekstrak semua nilai penggunaan untuk penggunaan yang jumlah laporannya lebih besar dari 1. Untuk mengekstrak penggunaan yang jumlah laporannya sama dengan 1, gunakan HidP_GetUsageValue.

Untuk informasi selengkapnya, lihat Koleksi HID.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows 2000 dan versi Windows yang lebih baru.
Target Platform Universal
Header hidpi.h (termasuk Hidpi.h)
Pustaka Hidparse.lib
IRQL <= DISPATCH_LEVEL

Lihat juga

HIDP_VALUE_CAPS

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsages

HidP_GetUsagesEx

_HIDP_PREPARSED_DATA