gpt4 book ai didi

c - libudev 返回重复的 USB 设备

转载 作者:太空宇宙 更新时间:2023-11-04 11:30:10 25 4
gpt4 key购买 nike

我正在创建一个程序来列出 Linux 中的所有 USB 设备(在我的例子中是 Ubuntu)。我一直在关注本教程 http://www.signal11.us/oss/udev/并将子系统从“hidraw”更改为“usb”。

它可以很好地列出设备,但包含重复项。

我显然可以用我的代码删除重复项,但我想知道您是否知道如何以不返回重复项的方式设置设备枚举。

如果你想看看我的代码(没有太大变化)它在 https://github.com/DiogoNeves/LinuxUsbTest

谢谢!

最佳答案

对于我的系统,我看到我的 USB 摄像头重复了,但这是正确的行为,因为它占用了 udev 中的多个插槽。当我执行 udevadm info --attribute-walk --name=video0 时,我看到了 USB 端点的条目和 USB 设备的条目。如果一个设备有很多端点,无疑会在 udev 中多次列出。要删除“重复项”,您可以过滤仅存在于父 USB 设备而非端点中的其他属性。

如果您要扫描 USB 设备,使用 libusb-1.0 可能更有意义,因为它具有“更好”的 USB 设备 View 。

关于c - libudev 返回重复的 USB 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11813492/

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