Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Подпрограмма 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_STATUS_INVALID_REPORT_LENGTH | Длина отчета недопустима. |
| HIDP_STATUS_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 |