我正在尝试在带有x64架构的Windows 8上使用OpenOCD。我通过Zadig安装了WinUSB驱动程序。我尝试使用管理员权限运行OpenOCD,并且还在WinUSB安装期间禁用了Windows 8驱动程序签名实施。每当我尝试运行程序时,libusb_open都会返回LIBUSB_ERROR_NOT_SUPPORTED(-12)。
如何在Windows 8上正确运行libusb-1.0?
P.S。:顺便说一句,我也尝试过使用Windows 7 x64的相同配置,OpenOCD也能正常工作。
答案 0 :(得分:1)
可能是您的设备是USB复合设备(例如最近的带有ST-LINKv2加密狗的STM32设备?)
在Zadig上,取消选中"选项::忽略中心或复合父母"并查看您的目标设备是否具有复合父级。
如果是这样,则可能是Windows8 / libusb-1.0限制。
@see http://www.emblocks.org/forum/viewtopic.php?f=19&t=478
您可能希望尝试将WinUSB附加到libusb-1.0网站上所述的复合父级:http://www.libusb.org/wiki/windows_backend。
"然而,可以用WinUSB替换复合父驱动程序来访问设备。"
但这意味着所有复合设备都会附加WinUSB,这可能是其他问题的根源。