本人不懂串行通信方面的编程,发觉程序可以控制机器的运动, 程序也可以读取及发送数据给机器,感到极大兴趣。想学习学习公司有一台机器,连着一台电脑,电脑通过COM1和此机器连接,用的软件是VB写的。
我猜用的是MSCOMM控件。
软件一般运行正常,但有时关了软件后,再开启,就会出现Port already open 提示,
应该是COM1被占用后没有释放的提示。我重启电脑,重启机器,再运行有时还是这样的提示,如何办呢?
是不是应该在程序上加上
...
If MSComm1.PortOpen = True Then MSComm1.PortOpen = False End If
MSComm1.PortOpen = True '先关了,再打开,就可保证不出现此错误?
...
对于程序是出现的错误提示:Port Already Open,我是这样做的(重启不行的前提条件下):
先在硬件管理器中禁有COM1,重启,再启用COM1,打开程序,就可以运行了.------------------------------------------本人只是此方面的菜鸟,想学习,请高手们带带呀,谢谢了.
我猜用的是MSCOMM控件。
软件一般运行正常,但有时关了软件后,再开启,就会出现Port already open 提示,
应该是COM1被占用后没有释放的提示。我重启电脑,重启机器,再运行有时还是这样的提示,如何办呢?
是不是应该在程序上加上
...
If MSComm1.PortOpen = True Then MSComm1.PortOpen = False End If
MSComm1.PortOpen = True '先关了,再打开,就可保证不出现此错误?
...
对于程序是出现的错误提示:Port Already Open,我是这样做的(重启不行的前提条件下):
先在硬件管理器中禁有COM1,重启,再启用COM1,打开程序,就可以运行了.------------------------------------------本人只是此方面的菜鸟,想学习,请高手们带带呀,谢谢了.
解决方案 »
- 希望朋友们身体健康!散分~
- 为什么显示编译错误,要求常量表达式?
- 关于一个用VB编写的PING工具的问题
- 在VB中如何画拓扑图?
- 如何绘制窗体菜单栏的背景(象超级解霸一样用图片作成的背景底纹)
- 请问在VB的程序中关闭调用的别的应用程序,关闭这个应用程序用什么API函数,具体语法又怎么写,谢谢
- [程序控制]如何实现按ctrl+x直接退出form(在线等待,马上给分)
- 20分请教关于用变量命名对象和参数的问题
- 最新的《CSDN专家门诊(论坛)用户行为准则》---------讨论哪!!!
- 关于OCX控件的加载问题,紧急求救!
- 如何用VB代码自动切换到SSTab1的某一选项,以代替用鼠标点击某一选项卡上的选项
- Port already open 提示
所以在程序中,应该捕获这个Port already open这个错误,否则让系统捕获,你的程序就异常退出了。------------------------------------------------------------------------
On Error GoTo aa
MSComm1.Settings = "9600,N,8,1" '9600波特,无奇偶校验,8位数据,一个停止位
MSComm1.InputLen = 0 '读入整个缓冲区
MSComm1.CommPort = 1 '串口1 COM1
MSComm1.PortOpen = True '打开端口
...aa:If Err.Number = 8005 Then MsgBox "串口已经被别的程序占用"End Sub