java - 在 C/C++/Java 中查找 USB 设备的信息

标签 java c++ c linux usb

我需要使用我的 C++ 程序列出现有的 USB 集线器和集线器中连接的设备。

我可以使用命令从终端打印 USB 集线器和集线器中连接的设备

lsusb lsusb -v

我想在我的 C++ 程序中使用该功能。

我如何以编程方式执行此操作。是否有任何 C++ 类可用于我的 Qt 应用程序或 c 或 java。这是从 https://unix.stackexchange.com/questions/61484/find-the-information-of-usb-devices-in-c 中获取的一项帮助

#include <stdio.h>
#include <usb.h>
main(){
struct usb_bus *bus;
struct usb_device *dev;
usb_init();
usb_find_busses();
usb_find_devices();
for (bus = usb_busses; bus; bus = bus->next)
    for (dev = bus->devices; dev; dev = dev->next){
        printf("Trying device %s/%s\n", bus->dirname, dev->filename);
        printf("\tID_VENDOR = 0x%04x\n", dev->descriptor.idVendor);
        printf("\tID_PRODUCT = 0x%04x\n", dev->descriptor.idProduct);
    }

} 有谁知道如何编译这个???我遇到了问题

最佳答案

你需要安装 libusb-dev 和 libusb

sudo apt-get update
sudo apt-get install libusb
sudo apt-get install libusb-dev

之后用-lusb编译你的代码

gcc usbtest.c -o usbtest -lusb

关于java - 在 C/C++/Java 中查找 USB 设备的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23261414/

相关文章:

c++ - 关于在c++中实现图形的问题

c - 在 C 编程中访问 Raspberry PI 寄存器

c - 一种不使用 'C' 的语言?

java - Java 中的字符串本地内存是什么?

java - 清理未关闭的 ZipFile 以在 excel 文件中归档

java - 整形时闪烁

java - 使用 JMX 进行负载平衡

c++ - 如何在 C++ 中从 bytearray 中提取字节时交换 64 位整数?

c++ - 哪些 x86 C++ 编译器本身是多线程的?

c++ - size_t除以int类型转换规则