Инициализация отчетов HID

В этом разделе описывается, как приложения пользовательского режима и драйверы в режиме ядра инициализируют отчет HID перед использованием подпрограмм поддержки HIDClass или ioCTL драйвера класса HID.

Чтобы инициализировать буфер отчета, приложение или драйвер создает буфер с нулевой инициализацией требуемого размера (в байтах) для типа отчета. Элементы XxxReportByteLength структуры HIDP_CAPS коллекции HID определяют требуемый размер входных, выходных и функциональных отчетов. После инициализации буфера отчета приложение или драйвер могут использовать HidP_Setподпрограммы Xxx для задания контрольных данных в отчете. При первом использовании отчета подпрограммы HidP_SetXxx устанавливают идентификатор отчета, связанный с указанным использованием HID. Если приложение или драйвер впоследствии попытается задать использование, несовместимое с идентификатором отчета, подпрограммы HidP_SetXxx возвращают состояние HIDP_STATUS_INCOMPATIBLE_REPORT_ID.