2008-10-10 55 views
1

我正在开发一个应用程序,该程序在连接了几个USB键盘的计算机上运行。偶尔会添加或删除键盘。每次按下某个键时,应用程序都需要找出哪个键被按下,以及使用了哪个键盘。在Mac OS X/Linux中是否有RawInput的替代方案

我有一个在Windows下使用RawInput的应用程序的工作版本。但是,如果添加或删除集线器或两个键盘,窗口可能需要一段时间才能确定发生了什么,而且我正在查看是否可以更加稳健地在不同的操作系统上实现相同的功能。

如果可能的话,Mac OS X/Cocoa将成为第二选择,但如果你能提出一种方法来做到这一点,我愿意接受任何其他平台如linux的建议。

回答

2

在Mac OS X上,您可以使用HID Manager直接了解哪些设备上的哪些HID元素正在启动。

这不仅适用于键盘,而且适用于所有HID设备 - 鼠标,游戏手柄等 - 尽管当然您可以限制您的代码只关注特定设备或特定类别的设备。

一般来说,您需要熟悉USB设备匹配和USB人机接口设备通信的概念,但是如果您是在Mac OS上使用HID管理器启动并运行某些应用程序,则应该相当简单X Leopard(10.5)。

相关问题