【发布时间】:2013-01-25 13:09:34
【问题描述】:
我需要确定即插即用设备的 COM 端口。我有 PnPDeviceID。这是一个蓝牙 USB 加密狗。
因此,我使用 WMI 检索有关设备的信息,如第一个示例 at this website。 WMI 查询的结果包含一个属性“DeviceID”,它是一个字符串。我的值是“COM3”。
我得到相同的值,当我这样做时(而不是使用 WMI)
string[] names = System.IO.Ports.SerialPort.GetPortNames();
现在我想知道,如果 COM-Devices 的 DeviceId 总是具有“COMx”格式?我实际上需要一个名为“Port”的属性,其值为整数。
还有另一种方法,检查注册表,但我不知道是否建议这样做。
【问题讨论】:
-
这是一个驱动实现细节。他们可以随心所欲地命名它,但是,当然,他们将其命名为“COMx”是很常见的。这个数字没有任何意义,所以最好让用户从列表中选择。
-
@SonerGönül 我几乎可以通过 WMI 获得这些信息。但是没有
int Port
标签: c# serial-port wmi device-manager