【问题标题】:win32_USBDevice is missging from Win32 ClassesWin32 类中缺少 win32_USBDevice
【发布时间】:2013-03-27 13:36:06
【问题描述】:

我正在尝试检索已连接 USB 设备的 PID 和 VID。从这行 C# 代码开始:

System.Management.ManagementClass USBClass = new ManagementClass("Win32_USBDevice");

然后我得到了异常"ManagementException not found",后来我遇到了这个链接: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394084(v=vs.85).aspx

原来Win32_USBDevice 根本不在名单上。试过Win32_USBController,但没有得到我想要的。谁能告诉我列表中是否有任何替代类来提取连接的 USB 设备的 PID 和 VID?

提前致谢!

【问题讨论】:

  • 你试过Win32_USBControllerDevice吗?
  • 看起来不符合要求。这是它的定义:class
    Win32_USBControllerDevice : CIM_ControlledBy { uint16 AccessState; CIM_USBController REF 先前; CIM_LogicalDevice REF 相关; uint32 协商数据宽度; uint64 协商速度; uint32 NumberOfHardResets; uint32 NumberOfSoftResets; };
  • 抱歉格式不可读。不知道如何更改评论中的行。

标签: c#-4.0 usb wmi device


【解决方案1】:

试试这个:

System.Management.ManagementClass USBClass = new ManagementClass("Win32_USBHub");

【讨论】:

    【解决方案2】:

    使用 Win32_PnPEntity。您可以通过解析“PNPDeviceID”从 Win32_PnPEntity 获取连接的 USB 设备的 PID 和 VID。

    从这个例子开始:Get List of connected USB Devices

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-24
      • 2013-07-04
      • 1970-01-01
      • 2012-01-22
      • 2012-03-19
      • 2019-10-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多