7

所以我在 Windows 下安装了 Pyusb 1.0.0-alpha-1
,我无法获得 USB 设备的任何句柄。

>>> import usb.core
>>> print usb.core.find()
None

我确实插入了 1 个 USB 设备(idVendor=0x04d8,idProduct=0x0042),我尝试过,usb.core.find(idVendor=0x04d8, idProduct=0x0042)但也失败了。

在 Ubuntu 下,使用相同版本的 pyusb 和 python (2.6),我能够使用该代码成功找到我的设备,并与之通信。

那么如何让 pyusb 在 Windows 7 上找到 USB 设备?

4

3 回答 3

5

请参阅Turbo J 的答案。要为您的设备安装 USB 驱动程序libusb,我找到了两个选项:

  • 使用libusb-win32inf-wizard.exe创建 INF 文件,然后用于install-filter-win.exe安装 libusb 作为您设备的驱动程序。

  • 使用zadig(更简单)

    • 如果没有显示设备,选项 > 列出所有设备
    • 选择libusb-win32作为要安装的驱动程序
于 2016-10-03T13:52:07.020 回答
4

Libusb requires you to install a special driver for every device you want to use it with. That usually requires you to write an .inf file containing the USB IDs of the device. Only if the driver and inf file are installed libusb will be able to "see" your device.

于 2011-04-23T23:52:22.903 回答
0

在运行 Python 3.9 的 Windows 10 中,我也遇到了同样的情况。根据PyUSB 的安装说明,您需要在 Windows 上手动安装libusb 。为此,我按照 Windows 文件附带的 README 文件中的说明进行操作(即手动复制libusb-1.0.dlllibusb-1.0.dll.a进入C:\Windows\System32),现在 PyUSB 列出了设备

import usb.core
import usb.util

list(usb.core.find(find_all=True))
于 2021-12-20T16:00:23.297 回答