2 bjut yue bjut_yue 于 2013.07.19 23:11 提问

.net开发 获取串口列 出现错误,没有的串口也显示出来很奇怪

本人最近在做一个gprs通讯,需要做一个下拉combobox,能自动读取所有已有串口。
我尝试了三种方法:
1、使用win32 的api :int ret = RegOpenKey(HKEY_LOCAL_MACHINE, @"Hardware\DEVICEMAP\SERIALCOMM", ref hKey);
2、System.IO.Ports.SerialPort.GetPortNames();
3、RegistryKey keyCom = Registry.LocalMachine.OpenSubKey("Hardware\DeviceMap\SerialComm");

使用这三种方法得到的结果是一样的,我在设备管理器中并没有串口,但是在我使用上述方法进行检测的时候,出现了Com3.
如果我确实插上了串口线在com3上,那么也能检测出com3,如果我查在了串口5上,那么检测到的是com5和com3,很奇怪,这个时候com3也是不应该有的。
因为这些问题,导致很麻烦也不知道怎么解决
我的系统是win7,不过在xp上测试软件一样出现这个问题,使用串口助手测试工具也出现了这个问题
请大神们帮忙解答下。

Csdn user default icon
上传中...
上传图片
插入图片