【问题标题】:Get WMI properties获取 WMI 属性
【发布时间】:2017-05-06 11:59:45
【问题描述】:

我是 C# 的新手,但不幸的是必须发现 USB 端口 VID 和 PID。

ObjectQuery objectQuery = new ObjectQuery("SELECT * FROM Win32_PnPEntity WHERE ConfigManagerErrorCode = 0");
ManagementObjectSearcher comPortSearcher = new ManagementObjectSearcher(connectionScope, objectQuery);

using (comPortSearcher)
{
    string caption = null;
    foreach (ManagementObject obj in comPortSearcher.Get())
    {
        if (obj != null)
        {
            object captionObj = obj["Caption"];
            // Rest of code
        }
    }
}

我实际上无法理解这个密钥"Caption" 的来源。我怎么知道这个对象中还隐藏了哪些键?这对我来说很不清楚。 我怎样才能得到这样的"Keys"的其他列表@

【问题讨论】:

  • 使用调试器检查obj 变量。您应该能够深入了解它的属性。
  • 我有但不幸的是没有成功

标签: c# usb wmi wmi-query


【解决方案1】:

此代码通过 WMI 访问不同的属性。具体来说,Win32_PnPEntity表示即插即用设备的属性

在 MSDN 上查看更多关于 Win32_PnPEntity class 及其属性的信息:

[Dynamic, Provider("CIMWin32"), UUID("{FE28FD98-C875-11d2-B352-00104BC97924}"), AMENDMENT]
class Win32_PnPEntity : CIM_LogicalDevice
{
  uint16   Availability;
  string   Caption;
  string   ClassGuid;
  string   CompatibleID[];
  uint32   ConfigManagerErrorCode;
  /* Rest of properties... */
};

ManagementObjectSearcherretrieve information of a WMI Class 的一种方式

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多