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


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

Подпрограмма HidP_GetUsages возвращает список всех кнопки управления HID использования, которые находятся на указанной странице использования и имеют значение ON в отчете HID.

Синтаксис

NTSTATUS HidP_GetUsages(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USAGE                UsagePage,
  [in]      USHORT               LinkCollection,
  [out]     PUSAGE               UsageList,
  [in, out] PULONG               UsageLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [out]     PCHAR                Report,
  [in]      ULONG                ReportLength
);

Параметры

[in] ReportType

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

[in] UsagePage

Указывает страницу использования использования кнопки. Подпрограмма возвращает только сведения о кнопках на этой странице использования.

[in] LinkCollection

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

[out] UsageList

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

[in, out] UsageLength

Указывает для входных данных длину в элементах массива UsageList буфера. Указывает в выходных данных количество кнопок, для которых задано значение ON на указанной странице использования.

[in] PreparsedData

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

[out] Report

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

[in] ReportLength

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

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

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

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

Замечания

Приложения в пользовательском режиме и драйверы в режиме ядра вызывают HidP_MaxUsageListLength, чтобы определить максимальное количество кнопок, которые можно вернуть для указанного типа отчета. Кроме того, приложения или драйверы могут вызывать HidP_GetUsages и задавать (*UsageLength) равным нулю, чтобы вернуть необходимую длину в UsageLength. Другими словами, UsageLength должен быть допустимым указателем, указывающим на значение ULONG 0, чтобы получить необходимую длину.

Приложения или драйверы определяют необходимую длину отчета из XxxreportByteLength членов коллекции HIDP_CAPS верхнего уровня.

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

Требования

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

См. также

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsageValueArray

HidP_GetUsagesEx

HidP_MaxUsageListLength

_HIDP_PREPARSED_DATA