是否有用于检测 USB 事件(插入和移除)的 Qt 解决方案?

新手上路,请多包涵

正如其他一些人几年前在这里问过的那样,我希望能够在 Qt 应用程序中检测何时插入 pendrive/datatraveler 以及何时在我的系统中拔出它(在 Linux Ubuntu 和嵌入式 Linux 中)。

我在 SO 中进行了搜索,我注意到大多数答案不仅非常过时(例如从 2010 年开始),而且所有解决方案都以某种方式涉及这些问题的“非 Qt 解决方案”:特定于平台或使用 udev 和 DBus 等外部库.

我首先想知道的是是否有针对此的特定 Qt 解决方案,即无需添加外部库或平台特定代码即可做到这一点的方法,以及如何使用它。最好它应该已经在 Qt 4.8 中可用。如果没有 Qt 解决方案,那么基于 Qt 的库是可以接受的。

添加: 搜索结果:

原文由 Momergil 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

正如已经指出的,Qt 本身并不提供这样的模块。然而,有一个名为 QDeviceWatcher 的用户自定义类。我个人没有经验,也没有定期更新,但你可以试一试。

您可以在 此处 找到论坛帖子和 此处 的 git 存储库。

原文由 Bowdzone 发布,翻译遵循 CC BY-SA 4.0 许可协议

Qt 中没有这样的 API,但是您可以继续使用一些平台级的 libusb 实现,这非常棒。

原文由 Ian P Badtrousers 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题