WMI查询PNP_entity的父/子

问题描述 投票:7回答:1

我目前正在开发一个程序来检查是否在C#中的特定USB集线器上检测到USB设备。我知道连接到集线器的集线器和从设备的PID和VID。我使用ManagementObjectSearcher Query来获取设备:

ManagementObjectSearcher USBSearchQuery = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_PnPEntity WHERE DeviceID LIKE \"%VID_17EF&PID_6019%\"");
ManagementObjectCollection DeviceCollection = USBSearchQuery.Get();

这很好用。 ManagementObjectCollection DeviceCollection包含2个元素。一个HID设备和一个USB设备。当我检查设备管理器时,我看到元素并且可以访问属性Parent,但似乎无法通过WMI查询获取对象的父对象或子对象。

我可以通过集线器的子节点或设备的父节点来完成此操作。你们有没有想过如何做到这一点?

c# usb wmi
1个回答
0
投票
ManagementObjectCollection DeviceCollection = USBSearchQuery .Get();
foreach (ManagementObject mo in DeviceCollection )
    {
      //get all properties 
      //ex: mo.Properties["Description"].Value represents the friendly name of the device
      //mo.Properties["PNPClass"].Value represents the parent class of the device
    }
© www.soinside.com 2019 - 2024. All rights reserved.