функция 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
Коллекция не содержит массив значений использования на указанной странице использования в отчете указанного типа отчета.

Комментарии

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

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

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

Дополнительные сведения см. в разделе Коллекции HID.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 2000 и более поздних версиях Windows.
Целевая платформа Универсальное
Верхняя часть hidpi.h (включая 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