funzione HidP_GetUsageValueArray (hidpi.h)
La routine HidP_GetUsageValueArray estrae i dati associati a una matrice di valori di utilizzo del controllo HID da un report HID.
Sintassi
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
);
Parametri
[in] ReportType
Specifica un valore enumeratore HIDP_REPORT_TYPE che identifica il tipo di report.
[in] UsagePage
Specifica la pagina di utilizzo della matrice dei valori di utilizzo.
[in] LinkCollection
Specifica la raccolta di collegamenti che contiene la matrice dei valori di utilizzo. Se LinkCollection è diverso da zero, la routine cerca solo una matrice di valori di utilizzo in questa raccolta di collegamenti; in caso contrario, se LinkCollection è zero, la routine cerca una matrice di valori di utilizzo nella raccolta di livello superiore associata a PreparsedData.
[in] Usage
Specifica l'utilizzo della matrice di valori di utilizzo.
[in, out] UsageValue
Puntatore a un buffer allocato dal chiamante in cui la routine restituisce i dati associati alla matrice di valori di utilizzo.
[in] UsageValueByteLength
Specifica la lunghezza, in byte, del buffer in UsageValue.
[in] PreparsedData
Puntatore ai dati pronti di una raccolta di primo livello.
[in] Report
Puntatore a un report contenente valori.
[in] ReportLength
Specifica la lunghezza, in byte, del report disponibile in Report.
Valore restituito
HidP_GetUsageValueArray restituisce uno dei valori di stato seguenti:
Codice restituito | Descrizione |
---|---|
|
La routine ha restituito correttamente i dati del valore. |
|
La lunghezza del report non è valida. |
|
Il tipo di report specificato non è valido. |
|
L'utilizzo richiesto non è una matrice di valori di utilizzo. |
|
Il buffer UsageValue è troppo piccolo per contenere l'utilizzo richiesto. |
|
La raccolta contiene una matrice di valori di utilizzo nella pagina di utilizzo specificata in un report del tipo specificato, ma non esistono tali utilizzi nel report specificato. |
|
I dati pronti non sono validi. |
|
La raccolta non contiene una matrice di valori di utilizzo nella pagina di utilizzo specificata in alcun report del tipo di report specificato. |
Commenti
Le dimensioni richieste, in byte, di UsageValueByteLength sono determinate moltiplicando i membri BitSize e ReportCount della struttura HIDP_VALUE_CAPS della matrice dei valori di utilizzo e arrotondando il risultato fino al byte più vicino.
HidP_GetUsageValueArray imposta il buffer UsageValue in ordine little-endian, a partire dal bit meno significativo dei dati di utilizzo. I dati non sono allineati a byte e vengono spostati in modo che il bit meno significativo dei dati si trovi al primo bit del buffer UsageValue .
HidP_GetUsageValueArray è progettato per estrarre tutti i valori di utilizzo per un utilizzo il cui conteggio dei report è maggiore di 1. Per estrarre un utilizzo il cui conteggio dei report è uguale a 1, usare HidP_GetUsageValue.
Per altre informazioni, vedere Raccolte HID.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows 2000 e versioni successive di Windows. |
Piattaforma di destinazione | Universale |
Intestazione | hidpi.h (include Hidpi.h) |
Libreria | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |