Как перехватить и перевести события USB - PullRequest
2 голосов
/ 04 декабря 2009

Я хотел бы использовать Philips LFH-2330 для просмотра изображений (с помощью средства просмотра изображений Windows или другого средства просмотра, такого как IrfanView и т. Д.)

LFH-2330 - это ножной контроллер с четырьмя педалями (см., Например, здесь ), используемый для управления программным обеспечением воспроизведения звука для транскрипции. Он поставляется с собственным драйвером и программным обеспечением.

Самой простой настройкой для меня было бы программное обеспечение, которое бы вместо этого ловило события педали из контроллера и запускало события клавиатуры (правая педаль => стрелка вправо, левая педаль => стрелка влево).

Однако для этой простой настройки необходимо, чтобы приложение для просмотра было в фокусе, чтобы оно работало.

Лучшим решением было бы иметь возможность управлять приложением для просмотра с помощью ножного контроллера без фокусировки (и не приведения приложения) в состояние, чтобы я мог печатать руками и одновременно разбивать страницы ногами. (Но этого также можно добиться с помощью двух компьютеров).

Как лучше всего подойти к этой проблеме?

1 Ответ

1 голос
/ 08 декабря 2009
  • Это более или менее хакерство, верно? Следующее может работать в Windows ~~~

В любом случае можно сделать следующее

  • Понимание команд USB с контроллер (с помощью usb-tracer)
  • Написать драйвер фильтра для перехвата USB IRP, и сгенерируйте такой IRP
  • Генерация IRP из вашего драйвера фильтра, на получение команд от вашего ввода, скажем, клавиатура

Для выполнения вышеперечисленных вещей вы должны очень хорошо знать модель WDM. IOCTL и т. Д. ~~~

...