Поделиться через


функция HidP_GetUsageValueArray (hidpi.h)

Подпрограмма HidP_GetUsageValueArray извлекает данные, связанные с элементом управления HID, массив значений использования из отчета HID.

Синтаксис

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
);

Параметры

[in] ReportType

Задает значение перечислителя HIDP_REPORT_TYPE, определяющее тип отчета.

[in] UsagePage

Указывает страницу использования массива значений использования.

[in] LinkCollection

Задает коллекцию ссылок , содержащую массив значений использования. Если LinkCollection ненулевое, подпрограмма выполняет поиск только массива значений использования в этой коллекции ссылок; В противном случае, если LinkCollection равно нулю, подпрограмма выполняет поиск массива значений использования в коллекции верхнего уровня, связанной с PreparsedData.

[in] Usage

Указывает использование массива значений использования.

[in, out] UsageValue

Указатель на выделенный вызывающим буфером, в котором подпрограмма возвращает данные, связанные с массивом значений использования.

[in] UsageValueByteLength

Указывает длину буфера в байтах в UsageValue.

[in] PreparsedData

Указатель на предварительно подготовленныхданных коллекции верхнего уровня.

[in] Report

Указатель на отчет, содержащий значения.

[in] ReportLength

Указывает длину отчета в байтах, расположенного в отчете.

Возвращаемое значение

HidP_GetUsageValueArray возвращает одно из следующих значений состояния:

Возвращаемый код Описание
HIDP_STATUS_SUCCESS
Подпрограмма успешно вернула данные значения.
HIDP_INVALID_REPORT_LENGTH
Длина отчета недопустима.
HIDP_INVALID_REPORT_TYPE
Указанный тип отчета недопустим.
HIDP_STATUS_NOT_VALUE_ARRAY
Запрошенное использование не является массивом значений использования.
HIDP_STATUS_BUFFER_TOO_SMALL
Буфер UsageValue слишком мал для хранения запрошенного использования.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
Коллекция содержит массив значений использования на указанной странице использования в отчете указанного типа, но в указанном отчете нет таких действий в указанном отчете.
HIDP_STATUS_INVALID_PREPARSED_DATA
Предварительно подготовленные данные недопустимы.
HIDP_STATUS_USAGE_NOT_FOUND
Коллекция не содержит массив значений использования на указанной странице использования в любом отчете указанного типа отчета.

Замечания

Требуемый размер в байтах UsageValueByteLeng th определяется путем умножения BitSize и ReportCount элементов HIDP_VALUE_CAPS структуры HIDP_VALUE_CAPS массива значений использования и округления результата до ближайшего байта.

HidP_GetUsageValueArray задает буфер UsageValue в маленьком порядке, начиная с наименьшего бита данных об использовании. Данные не выравниваются по байтам и сдвигаются таким образом, что наименьший значительный бит данных находится в первом бите буфера UsageValue.

HidP_GetUsageValueArray предназначен для извлечения всех значений использования для использования, количество отчетов которых превышает 1. Чтобы извлечь использование, число отчетов которого равно 1, используйте HidP_GetUsageValue.

Дополнительные сведения см. в коллекциях HID.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows 2000 и более поздних версиях Windows.
целевая платформа Всеобщий
заголовка hidpi.h (include Hidpi.h)
библиотеки Hidparse.lib
IRQL <= DISPATCH_LEVEL

См. также

HIDP_VALUE_CAPS

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsages

HidP_GetUsagesEx

_HIDP_PREPARSED_DATA