我们在 C++ 代码中使用libusb v1.0.9.0(带有 Java 前端)。我们正在多个版本的 Windows 和用于各种 USB 2.0/3.0 控制器的多台机器上对其进行测试,我们发现了一些非常糟糕的问题。
在 Windows 7 上,它看不到“英特尔 USB 3.0 可扩展主机控制器”平台上的任何端口。
在 Windows Server 2008 上,它看不到 USB 2.0 和 3.0 控制器上的某些端口。2.0 集线器上的一些端口工作,3.0 集线器上的一些端口工作,但其他端口对同一设备、任何设备都是不可见的。
第一个可能只是一个特定的控制器特性,很快就会得到支持,但第二个确实让我们担心。这种行为普遍吗?我们如何解决它?
我们正在使用libusb_get_device_list()
or libusb_open_device_with_vid_pid()
。