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


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

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

Синтаксис

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

Параметры

[in] ReportType

Указывает значение перечислителя HIDP_REPORT_TYPE, указывающее тип отчета HID, расположенного в отчете.

[in] UsagePage

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

[in] LinkCollection

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

[in] Usage

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

[in] UsageValue

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

[in] UsageValueByteLength

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

[in] PreparsedData

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

[in, out] Report

Указатель на отчет HID.

[in] ReportLength

Указывает размер отчета HID в байтах, расположенный в отчета, который должен быть равен длине отчета для указанного типа отчета, который HidP_GetCaps возвращается в структуре HIDP_CAPS коллекции.

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

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

Возвращаемый код Описание
HIDP_STATUS_SUCCESS
Подпрограмма успешно задает значение использования.
HIDP_STATUS_INVALID_REPORT_LENGTH
Длина отчета недопустима.
HIDP_STATUS_INVALID_REPORT_TYPE
Указанный тип отчета недопустим.
HIDP_STATUS_BUFFER_TOO_SMALL
Размер буфера UsageValue в байтах слишком мал.
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
Использование не существует в указанном отчете, но оно существует в другом отчете указанного типа.
HIDP_STATUS_NOT_VALUE_ARRAY
Указанное использование не является массивом значений использования.
HIDP_STATUS_INVALID_PREPARSED_DATA
Предварительно подготовленные данные недопустимы.
HIDP_STATUS_REPORT_DOES_NOT_EXIST
Нет отчетов указанного типа.
HIDP_STATUS_NOT_IMPLEMENTED
Размер отчета полей данных, указанных для массива значений использования, не является несколькими из восьми битов.
HIDP_STATUS_USAGE_NOT_FOUND
Использование не существует в любом отчете указанного типа отчета.

Замечания

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

HidP_SetUsageValueArray поддерживает только массивы значений использования, в которых каждое поле данных массива составляет несколько восьми битов.

Вызывающий объект должен задать буфер usageValue точно так же, как он должен происходить в отчете.

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

Требования

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

См. также

HidP_SetScaledUsageValue

HidP_SetUsageValue

_HIDP_PREPARSED_DATA