Добрый день. Есть в наличии hid-клавиатура с подсветкой клавиш и набором дополнительных клавиш, но без собственной памяти. Стоит задача написать кроссплатформенное (windows, linux) через которое можно: 1) Управлять цветом подсветки. 2) Назначать коды клавиш дополнительным клавишам. Я пробовал использовать для этой цели библиотеки hidapi и libusb. На linux проблем нет, но есть на windows. Как я понял windows взаимодействует с hid-клавиатурами в монопольном режиме, что не позволяет использовать функции типа hid_write. Установка драйвера winusb(для libusb) привела к отказу клавиатуры, драйвер откатил. Каким образом можно решить подобную задачу? Знаний и навыков для написания собственного драйвера клавиатуры нету.
В винде для работы с hid испльзуются hidD_* функции (hid.dll), которые сводятся к NtCreateFile+DeviceIoControl. Для hidD_SetFeature например устройство открывается с GENERIC_READ, не думаю, что там монопольный доступ только возможен. Вообще хид тем и хорош, что как раз драйвера-то ему и не надо.
Nirah, так можь пойдёшь иным путём: подбери себе другую клаву с нужными тебе опциями + можешь поискать прожки. А если уж сам хочешь что-сь написать == https://docs.microsoft.com/en-us/windows-hardware/drivers/hid/virtual-hid-framework--vhf-
Я думал разрабатываете клавиатуры. Не факт, что ее можно через hid настраивать. Все производители, ПО которых видел, норовят свой драйвер впарить. Скорей всего не от того, что обожают писать драйвера.