我正在寻找我的USB转串口转换器。我有两个目标:
下面是我的设备管理器
的屏幕截图
现在我的座右铭是识别由ATEN
提供的USB转串口桥,但我不是专门寻找ATEN的东西,只是我需要知道如何查询ManagementObject
因为如果我为某些系统查找Caption
,那么它是ATEN USB to Serial Bridge
,对于某些系统,它是USB-to-Serial Comm. Port
,对于其他系统,它可能会成为其他系统。永不改变的是Provider - "ATEN"
以下是我的代码:
Now I have did something here under to get/extract data from **CAPTION**
using (ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_PnPEntity WHERE Caption like '%ATEN USB to Serial Bridge%'"))
{
foreach (ManagementObject queryObj in searcher.Get())
{
foreach (PropertyData prop in queryObj.Properties)
{
listBox1.Items.Add(String.Format("{0}: {1}", prop.Name, prop.Value));
}
string s = queryObj["Caption"].ToString();
// Here under i play with the string `s` to get the `CCOM21`
int start = s.IndexOf("(");
int end = s.IndexOf(")");
result = s.Substring(start, end - start);
result = result.Replace("(", "");
list.Items.Add(result);
}
}
我知道这不是正确的方法,但我如何通过查询 ManagementObject 获取COM21
端口和Provider - ATEN
。或者还有其他直接的方法来做到这一点。