Condividi tramite


funzione HidP_GetUsagesEx (hidpi.h)

La routine HidP_GetUsagesEx restituisce un elenco di tutti i pulsanti di controllo HID utilizzi impostati su ON in un report HID.

Sintassi

NTSTATUS HidP_GetUsagesEx(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USHORT               LinkCollection,
  [in, out] PUSAGE_AND_PAGE      ButtonList,
  [in, out] ULONG                *UsageLength,
  [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] LinkCollection

Specifica l'raccolta di collegamenti degli utilizzi dei pulsanti. Se LinkCollection è diverso da zero, la routine restituisce solo informazioni sui pulsanti contenuti nella raccolta di collegamenti; in caso contrario, se LinkCollection è zero, la routine restituisce informazioni su tutti i pulsanti della raccolta di primo livello associata a PreparsedData.

[in, out] ButtonList

Puntatore a un buffer allocato dal chiamante usato da routine per restituire l'utilizzo e pagina di utilizzo identificatori per ogni pulsante impostato su ON (1).

[in, out] UsageLength

Specifica, in base all'input, la lunghezza, negli elementi della matrice, del buffer ButtonList. Specifica, nell'output, i numeri di utilizzo attualmente impostati su ON nel report specificato.

[in] PreparsedData

Puntatore a una raccolta di livello superiore prepara i dati.

[in] Report

Puntatore a un report che contiene i dati del pulsante.

[in] ReportLength

Specifica la lunghezza, in byte, del report che si trova in Report.

Valore restituito

HidP_GetUsagesEx restituisce uno dei valori di stato seguenti:

Codice restituito Descrizione
HIDP_STATUS_SUCCESS
La routine ha restituito correttamente tutti gli utilizzi dei pulsanti impostati su ON.
HIDP_INVALID_REPORT_LENGTH
La lunghezza del report non è valida.
HIDP_INVALID_REPORT_TYPE
Il tipo di report specificato non è valido.
HIDP_STATUS_BUFFER_TOO_SMALL
Il buffer usageList è troppo piccolo per contenere tutti gli utilizzi attualmente impostati su ON nel report specificato.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
La raccolta contiene pulsanti in un report del tipo specificato, ma non esistono tali utilizzi nel report specificato.
HIDP_STATUS_INVALID_PREPARSED_DATA
I dati pronti non sono validi.

Osservazioni

Le applicazioni in modalità utente e i driver in modalità kernel chiamano HidP_MaxUsageListLength per determinare il numero massimo di pulsanti restituiti per il tipo di report specificato. In alternativa, le applicazioni o i driver possono chiamare HidP_GetUsagesEx e impostare (*UsageLength) su zero per restituire la lunghezza richiesta in UsageLength. In altre parole, UsageLength deve essere un puntatore valido che punta a un valore ULONG 0 per ottenere la lunghezza richiesta.

Le applicazioni o i driver determinano la lunghezza del report richiesta dai membri HIDP_CAPSHIDP_CAPSHIDP_CAPSXxxReportByteLeng th.

Per altre informazioni, vedere raccolte HID.

Fabbisogno

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

Vedere anche

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsageValueArray

HidP_GetUsagesEx

HidP_MaxUsageListLength

USAGE_AND_PAGE

_HIDP_PREPARSED_DATA