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.
Mengembalikan nilai
HidP_GetUsageValueArray mengembalikan salah satu nilai status berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Rutinitas berhasil mengembalikan data nilai. |
|
Panjang laporan tidak valid. |
|
Tipe laporan yang ditentukan tidak valid. |
|
Penggunaan yang diminta bukan array nilai penggunaan. |
|
Buffer UsageValue terlalu kecil untuk menahan penggunaan yang diminta. |
|
Koleksi berisi array nilai penggunaan pada halaman penggunaan yang ditentukan dalam laporan jenis yang ditentukan, tetapi tidak ada penggunaan tersebut dalam laporan yang ditentukan. |
|
Data yang disiapkan tidak valid. |
|
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
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 |