функция HidP_GetUsagesEx (hidpi.h)
Подпрограмма HidP_GetUsagesEx возвращает список всех кнопок управления HID, для которых в отчете HID задано значение ON.
Синтаксис
NTSTATUS HidP_GetUsagesEx(
[in] HIDP_REPORT_TYPE ReportType,
[in] USHORT LinkCollection,
[in, out] PUSAGE_AND_PAGE ButtonList,
[in, out] ULONG *UsageLength,
[in] PHIDP_PREPARSED_DATA PreparsedData,
[in] PCHAR Report,
[in] ULONG ReportLength
);
Параметры
[in] ReportType
Задает значение перечислителя HIDP_REPORT_TYPE , определяющее тип отчета.
[in] LinkCollection
Указывает коллекцию ссылок для использования кнопки. Если linkCollection не является нулевым, подпрограмма возвращает только сведения о кнопках, содержащихся в этой коллекции ссылок; В противном случае, если LinkCollection равно нулю, подпрограмма возвращает сведения обо всех кнопках в коллекции верхнего уровня , связанной с PreparsedData.
[in, out] ButtonList
Указатель на буфер, выделенный вызывающим объектом, который подпрограмма использует для возврата идентификаторов страниц использования и использования для каждой кнопки, для которых задано значение ON (1).
[in, out] UsageLength
Указывает во входных данных длину буфера ButtonList в элементах массива. Указывает в выходных данных число случаев использования, для которых в данный момент задано значение ON в указанном отчете.
[in] PreparsedData
Указатель на подготовленные данные коллекции верхнего уровня.
[in] Report
Указатель на отчет, содержащий данные кнопки.
[in] ReportLength
Указывает длину отчета в байтах, расположенного в разделе Отчет.
Возвращаемое значение
HidP_GetUsagesEx возвращает одно из следующих значений состояния:
Код возврата | Описание |
---|---|
|
Подпрограмма успешно вернула все параметры использования кнопки, для которые задано значение ON. |
|
Недопустимая длина отчета. |
|
Указанный тип отчета недопустим. |
|
Буфер UsageList слишком мал, чтобы в указанном отчете в ней вмещались все сведения об использовании, которые в настоящее время имеют значение ON. |
|
Коллекция содержит кнопки в отчете указанного типа, но такого использования в указанном отчете нет. |
|
Готовые данные недопустимы. |
Комментарии
Приложения пользовательского режима и драйверы режима ядра вызывают HidP_MaxUsageListLength , чтобы определить максимальное количество кнопок, возвращаемых для указанного типа отчета. Кроме того, приложения или драйверы могут вызывать HidP_GetUsagesEx и устанавливать (*UsageLength) значение 0, чтобы вернуть необходимую длину в UsageLength. Другими словами, UsageLength должен быть допустимым указателем, указывающим на значение ULONG 0 , чтобы получить необходимую длину.
Приложения или драйверы определяют необходимую длину отчета из элементов XxxReportByteLength в HIDP_CAPS структуре коллекции верхнего уровня.
Дополнительные сведения см. в разделе Коллекции HID.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows 2000 и более поздних версиях Windows. |
Целевая платформа | Универсальное |
Верхняя часть | hidpi.h (включая Hidpi.h) |
Библиотека | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |