função HidP_GetUsageValueArray (hidpi.h)
A rotina HidP_GetUsageValueArray extrai os dados associados a uma matriz de valor de uso de controle HID de um relatório HID.
Sintaxe
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
);
Parâmetros
[in] ReportType
Especifica um valor de enumerador HIDP_REPORT_TYPE que identifica o tipo de relatório.
[in] UsagePage
Especifica a página de uso da matriz de valor de uso.
[in] LinkCollection
Especifica a coleção de link que contém a matriz de valor de uso. Se LinkCollection não for zero, a rotina só procurará uma matriz de valor de uso nesta coleção de links; caso contrário, se LinkCollection for zero, a rotina procurará uma matriz de valor de uso na coleção de nível superior associada a PreparsedData.
[in] Usage
Especifica o uso da matriz de valor de uso.
[in, out] UsageValue
Ponteiro para um buffer alocado pelo chamador no qual a rotina retorna os dados associados à matriz de valor de uso.
[in] UsageValueByteLength
Especifica o comprimento, em bytes, do buffer em UsageValue.
[in] PreparsedData
Ponteiro para os dados pré-preparados de uma coleção de nível superior.
[in] Report
Ponteiro para um relatório que contém valores.
[in] ReportLength
Especifica o comprimento, em bytes, do relatório localizado em Relatório.
Retornar valor
HidP_GetUsageValueArray retorna um dos seguintes valores de status:
Código de retorno | Descrição |
---|---|
|
A rotina retornou com êxito os dados do valor. |
|
O comprimento do relatório não é válido. |
|
O tipo de relatório especificado não é válido. |
|
O uso solicitado não é uma matriz de valor de uso. |
|
O buffer UsageValue é muito pequeno para manter o uso solicitado. |
|
A coleção contém uma matriz de valor de uso na página de uso especificada em um relatório do tipo especificado, mas não há esses usos no relatório especificado. |
|
Os dados pré-parados não são válidos. |
|
A coleção não contém uma matriz de valor de uso na página de uso especificada em nenhum relatório do tipo de relatório especificado. |
Comentários
O tamanho necessário, em bytes, de UsageValueByteLength é determinado multiplicando os membros BitSize e ReportCount da estrutura HIDP_VALUE_CAPS da matriz de valor de uso e arredondando o resultado para o byte mais próximo.
HidP_GetUsageValueArray define o buffer UsageValue em ordem little-endian, começando com o bit menos significativo dos dados do uso. Os dados não são alinhados a bytes e são deslocados de modo que o bit menos significativo dos dados esteja localizado no primeiro bit do buffer UsageValue .
HidP_GetUsageValueArray foi projetado para extrair todos os valores de uso para um uso cuja contagem de relatórios é maior que 1. Para extrair um uso cuja contagem de relatórios é igual a 1, use HidP_GetUsageValue.
Para obter mais informações, consulte Coleções HID.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows 2000 e versões posteriores do Windows. |
Plataforma de Destino | Universal |
Cabeçalho | hidpi.h (inclua Hidpi.h) |
Biblioteca | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |