怎样用VB做一个端口检测程序?
程序只有一个控件:Combo
实现当程序启动时自动定位到已打开或已存在的端口,如果电脑COM1存在,那么Combo的值为COM1,如果电脑COM2存在则Combo的值为COM2

解决方案 »

  1.   

    Private Sub Form_Load()Combo1.AddItem "com1"
    Combo1.AddItem "com2"
    再初始化断口com1和com2
     如果com1存在 所以:
       combo1.listindex=com1
      else
         combo1.listindex=com2
    其它的问题你自己解决!
      

  2.   

    On Error Resume Next
        If MSComm1.PortOpen Then
            MSComm1.PortOpen = False
        End If
        MSComm1.CommPort = 1
        MSComm1.Settings = "9600,n,8,1"
        MSComm1.PortOpen = Not MSComm1.PortOpen '打开通信口
        If Err Then
             MSComm1.CommPort = 2
             MSComm1.PortOpen = True
             if err then
                 msgbox "无法打开串口"
             else 
                combo1.listindex=1 
             end if 
        else
            combo1.listindex=0
        end if此段代码检测2个串口,并且假定combo的列表数据为com1和com2
      

  3.   

    这种方法的效率太差。假如我使用多串口卡扩展了n个串口,且n的值不定,那要做几次循环呢?在VB里可以使用WMI来检测系统硬件信息。你可以去MSDN的网站上查查。