我正在开发一个在连接了几个USB键盘的机器上运行的应用程序。有时会添加或删除键盘。每次按下一个键,应用程序都需要找出按下了哪个键,以及使用了哪个键盘。
我有一个在Windows下使用RawInput的应用程序的工作版本。然而,如果您添加或删除一个集线器或两个完整的键盘,Windows可能需要一段时间才能解决问题,而且我也在考虑是否可以更加强大地在不同的操作系统上实现相同的功能。
如果有可能的话,Mac OS X / Cocoa将是第二选择,但如果您可以建议一种方法,我愿意接受任何其他平台的建议。答案 0 :(得分:2)
在Mac OS X上,您可以使用HID Manager直接了解在哪些设备上启动哪些HID元素。
这不仅适用于键盘,也适用于所有HID设备 - 鼠标,游戏手柄等 - 当然,您可以将代码注重的内容仅限于特定类别的特定设备或设备。
一般情况下,您需要熟悉USB设备匹配和USB人机接口设备通信的概念,但如果您是这样的话,那么在Mac OS X上使用HID管理器进行操作应该非常简单Leopard(10.5)。