gpt4 book ai didi

c++ - 多个键盘 - 捕获每个流 - 在 Mac 上 - 如何?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:00:13 25 4
gpt4 key购买 nike

我的 Apple MacBook Pro 上有多个无线键盘。我正在用 C++ 开发跨平台应用程序,需要了解每个特定键盘的流。

目前我可以通过 Dbus 和 glib 在 Linux 上完成这个。在 Windows 上,我使用 rawInput API。在 Apple 上,我查看了文档,他们谈论使用 HID Manager,但它已被弃用(即 Carbon days),而且示例代码似乎不再有效。到目前为止,我还没有找到一种方法来连接到 Mac 上的原始键盘流,然后操作系统将其整合为一个整体。

有人有任何想法或代码示例来从 Mac 上的多个键盘获取流吗?

谢谢!

最佳答案

您可以使用 USB HID Manager 读取来自每个键盘的原始 HID 事件,但我不确定这是否可行(如果普通应用程序可以读取原始键盘事件、嗅探密码等,这似乎是一个很大的安全漏洞)。如果可能的话,您可能需要以 root 身份运行您的应用程序才能访问这些输入设备。 HID 管理器使用起来还不错,但没有很好地记录它,hidapi是一个非常好的跨平台 API,位于它之上。即使它可能不会公开您需要的所有功能,它仍然是一个很好的 HID 管理器编程示例。

可以捕获键盘事件的下一个级别是 Quartz Event Taps , 和一个 kCGHIDEventTap。不过,通过查看这些文档,我认为没有办法获取每个设备的事件。

关于c++ - 多个键盘 - 捕获每个流 - 在 Mac 上 - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9222092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com