Condividi tramite


funzione HidP_SetUsageValueArray (hidpi.h)

La routine HidP_SetUsageValueArray imposta una matrice di valori di utilizzo del controllo HID in un report HID specificato.

Sintassi

NTSTATUS HidP_SetUsageValueArray(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USAGE                UsagePage,
  [in]      USHORT               LinkCollection,
  [in]      USAGE                Usage,
  [in]      PCHAR                UsageValue,
  [in]      USHORT               UsageValueByteLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [in, out] PCHAR                Report,
  [in]      ULONG                ReportLength
);

Parametri

[in] ReportType

Specifica un valore enumeratore HIDP_REPORT_TYPE che indica il tipo di report HID disponibile in Report.

[in] UsagePage

Specifica la pagina di utilizzo di un utilizzo.

[in] LinkCollection

Specifica la raccolta di collegamenti che contiene l'utilizzo. Se LinkCollection è diverso da zero, la routine imposta solo l'utilizzo, se presente, in questa raccolta di collegamenti. Se LinkCollection è zero, la routine imposta il primo utilizzo trovato nella raccolta di livello superiore associata a PreparsedData.

[in] Usage

Specifica l'utilizzo.

[in] UsageValue

Puntatore a un buffer allocato dal chiamante che contiene i dati associati alla matrice dei valori di utilizzo.

[in] UsageValueByteLength

Specifica la lunghezza, in byte, del buffer UsageValue .

[in] PreparsedData

Puntatore ai dati pronti di primo livello.

[in, out] Report

Puntatore a un report HID.

[in] ReportLength

Specifica le dimensioni, in byte, del report HID che si trova in Report, che deve essere uguale alla lunghezza del report per il tipo di report specificato che HidP_GetCaps restituisce nella struttura HIDP_CAPS di una raccolta.

Valore restituito

HidP_SetUsageValueArray restituisce uno dei valori di stato seguenti:

Codice restituito Descrizione
HIDP_STATUS_SUCCESS
La routine imposta correttamente il valore di utilizzo.
HIDP_STATUS_INVALID_REPORT_LENGTH
La lunghezza del report non è valida.
HIDP_STATUS_INVALID_REPORT_TYPE
Il tipo di report specificato non è valido.
HIDP_STATUS_BUFFER_TOO_SMALL
Le dimensioni, in byte, del buffer UsageValue sono troppo piccole.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
L'utilizzo non esiste nel report specificato, ma esiste in un report diverso del tipo specificato.
HIDP_STATUS_NOT_VALUE_ARRAY
L'utilizzo specificato non è una matrice di valori di utilizzo.
HIDP_STATUS_INVALID_PREPARSED_DATA
I dati pronti non sono validi.
HIDP_STATUS_REPORT_DOES_NOT_EXIST
Non sono presenti report del tipo specificato.
HIDP_STATUS_NOT_IMPLEMENTED
Le dimensioni del report dei campi dati specificati per la matrice dei valori di utilizzo non sono un multiplo di otto bit.
HIDP_STATUS_USAGE_NOT_FOUND
L'utilizzo non esiste in alcun report del tipo di report specificato.

Commenti

Le dimensioni richieste, in byte, del buffer UsageValue sono determinate moltiplicando insieme i membri BitSize e ReportCount della struttura HIDP_VALUE_CAPS della matrice dei valori di utilizzo e arrotondando il risultato al byte più vicino.

HidP_SetUsageValueArray supporta solo matrici di valori di utilizzo in cui ogni campo dati della matrice è un multiplo di otto bit.

Il chiamante deve impostare il buffer UsageValue esattamente come dovrebbe verificarsi nel report.

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

Vedi anche

HidP_SetScaledUsageValue

HidP_SetUsageValue

_HIDP_PREPARSED_DATA