使用Win 10系统使用设备管理器和Py scrip访问所有连接的设备

2024-07-08 08:42:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我无法使用PyPi上的infi.manager包访问Windows系统上的磁盘驱动器。你知道吗

尝试了以下操作:

  from infi.devicemanager import DeviceManager
  dm = DeviceManager()
  dm.root.rescan()
  disks = dm.disk_drives
  names = [disk.friendly_name for disk in disks]

错误消息:

Traceback (most recent call last):  
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\setupapi\functions.py", line 56, in callee  
    yield decorated_func(*args, **kwargs)
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\setupapi\functions.py", line 70, in SetupDiEnumDeviceInfo
    interface(device_info_set, index, device_info_buffer)
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\cwrap\__init__.py", line 138, in __new__
    return_value = function(*args[1:], **kwargs)
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\setupapi\__init__.py", line 35, in errcheck
    raise WindowsException(GetLastError())
infi.devicemanager.setupapi.WindowsException: 259, No more data is available.

在处理上述异常时,发生了另一个异常:

Traceback (most recent call last):
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\setupapi\functions.py", line 60, in callee
    raise StopIteration
StopIteration

上述异常是以下异常的直接原因:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\__init__.py", line 215, in disk_drives
    for controller in self.storage_controllers:
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\__init__.py", line 227, in storage_controllers
    return self.get_devices_from_handle(handle)
  File "C:\Users\rsushmit\AppData\Local\Programs\Python\Python37-32\lib\site-packages\infi\devicemanager\__init__.py", line 198, in get_devices_from_handle
    for devinfo in functions.SetupDiEnumDeviceInfo(handle):
RuntimeError: generator raised StopIteration

Tags: inpylibpackageslocallinesiteusers

热门问题