Changing the keystrokes of a USB keyboard
我的问题与上面的问题非常相似......(没有明确答案)
我有一个很好的USB键盘,我想用它来控制我正在写的音频/视频节目。我无法让USB键盘输入干扰常规操作系统界面 -
因此,我需要让操作系统将其识别为某种通用HID设备,或MIDI设备,或发送OSC信息的东西。
我正在OSX上编写这个程序,但是我想找出一个跨平台的解决方案,它不涉及我黑客攻击键盘的硬件 - 希望我可以使用某种程序或脚本。这样做的原因是我想将这个程序分发给其他人以便轻松使用。
关于从哪里开始的任何想法?我想我可能需要为用户编写一个单独的程序来选择USB设备并将其重新路由到我的程序中......
任何语言都很好 - 我用Python编写代码,有时用C语言和Java / Processing。
答案 0 :(得分:1)
不幸的是,你会发现这很难做到:大多数现代操作系统会自动检测HID配置文件并为其加载驱动程序,一般来说,很难覆盖默认行为。
如果不破解硬件,您需要以某种方式覆盖操作系统对该特定USB VID(供应商ID)和PID(产品ID)的默认行为,并指示操作系统加载您自己的自定义内核扩展?我建议从http://www.opensource.apple.com/source/IOUSBFamily/IOUSBFamily-206.4.1/AppleUSBKeyboard/的AppleUSBKeyboard驱动程序源开始,然后找出如何安装自定义版本作为特定键盘的VID和PID的首选USB驱动程序。在那之后它应该是杂乱乱糟糟的杂乱问题,只发送密钥到你的应用程序而不是其他任何东西。
答案 1 :(得分:0)
是否可以写一个 禁用常规的功能 操作系统键盘输入 除ESC之外的所有键if 我的节目是焦点? - 杰弗里梅 24时21分59秒
是的,这应该是可能的,我不知道Mac,但在Win32上你想要一个全局键盘钩子(查看SetWindowsHookEx)