因为一个程序要控制5个硬件设备,所以我安装了多串口卡(此卡共有4个串口),我用超级终端测试每一个串口都是OK的!但是我的程序在打开串口时候却报如下错误:"运行错误8002,无效的端口号"!不知道是什么原因?望大家指教!多谢了

解决方案 »

  1.   

    8002错误代表,无效的端口,说明的打开的COM口不存在,可以设置断点,察看打开时的实际端口。如果你用的是列表控件,如果不选择,采用默认值,那么combcom.listindex=-1,此时对应的COM口肯定不存在。正确的处理方式应该做一个判断,如果combcom.listindex=-1那么,给需要打开的串口付值为默认需要打开的串口。
      

  2.   

    非常感谢wds() 的答复!我的系统在客户那里已经运行很久了,最近突然出现了这样的错误.我也跟踪调试了程序,端口号没有错!我怀疑是多串口卡有问题!但是用超级终端进行了端口测试,每个端口都能传输数据.真是困惑啊!