C#通过注册表列出所有串口的实例
using Microsoft.Win32;
RegistryKey hklm = Registry.LocalMachine;
RegistryKey software = hklm.OpenSubKey("HARDWARE");
RegistryKey no1 = software.OpenSubKey("DEVICEMAP");
RegistryKey no2 = no1.OpenSubKey("SERIALCOMM");
string[] linesplit = no2.GetValueNames();
if(linesplit.Length <= 0)
{
MessageBox.Show("there is no COM");
}
else
{
for (int i = 0; i < linesplit.Length; i++ )
{
cbxPort.Items.Add(no2.GetValue(linesplit[i]));
}
}
假设已经有一个comboBox的控件,此时,cbxPort里就已经列出所有串口的名称。