using System;
using System.IO.Ports;
public static void getPorts()
{
string[] ports = SerialPort.GetPortNames();
Console.WriteLine("The following serial ports were found:");
foreach (string port in ports)
{
Console.WriteLine(port);
}
Console.ReadLine();
}
我对这个简单的代码有疑问。我需要写出我的端口,因为我稍后会与他们一起工作(我在我更大的应用程序中使用这个简单的功能)。一切正常,直到我升级Windows。你知道可能是什么问题吗?我还安装了所有驱动程序。
答案 0 :(得分:1)
SerialPort.GetPortNames
方法不会列出一些虚拟串行端口(如某些USB-to-RS232适配器等提供的端口),因为它依赖于HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM
注册表项,如documentation。
您可以使用WMI查询列出所有串行端口,详细信息为here。