一个端口,打开com口的时候提示"端口已打开"
但是既然已打开,我去关闭,它却提示"设备未打开"

解决方案 »

  1.   

    我的电脑->右键属性->硬件->设备管理
    里面看看这个端口
      

  2.   

    和代码没关系,也不是经常出现,偶尔来一次
    网上也有很多这样的事情
    解决办法打开注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter
    把ComDB删除
      

  3.   

    如果是这样说的话,最好是先判断一下PortOpen的值再来做相应的动作。
      

  4.   

    MSComm1.PortOpen = True是false,但是打开的时候:“串口已打开”下边没辙了,打不开,关不掉
      

  5.   

    重新打开或者关掉vbp好像可以了
    什么原因不清楚了
      

  6.   


    端口已打开 是说被占用设备未打开 指的是你串口句柄无效,没必要执行CloseHandle
    你只能关闭你打开的,只是说明没有你打开的串口,所以没打开。前面那个是说别的程序打开了。
      

  7.   

    22楼说的对!端口已经被打开!在前提是你没有打开的情况下,还这么提示,说明其他程序已经打开了这个端口!这个时候,你可以这么去试一下:桌面上“我的电脑”上点击一下右键——>左击“管理”进入计算机管理——>点击设备管理器——>端口(com 和 lpt)——>在这里找到你要打开的那个端口——>点击右键——停用——>待执行完停用操作后——>再重新点右键“启用”一下——>然后再去你的程序里试着打开一下该端口看能不能打开成功?如果成功了,说明计算启动后该端口就已经被操作系统中的其他程序占用了!(如果“停用”就失败了那更说明是有别的程序在使用了)如果停用成功,重新启用也成功,但你的程序还是打不开它,那有可能就不是被别的程序占用了。