MSComm控件的奇怪问题????

flowercat 2003-09-04 02:54:42
使用超级终端可以很好的访问COM口,但是在VB6中用MSComm控件,输入命令后发现inputBufferCount的值不为0,但是用input读取时总是出错!!请问是什么原因呀?

谢谢各位,在线等待,解决问题马上揭帖!!!!

...全文
33 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
LeoUltraman 2003-09-04
  • 打赏
  • 举报
回复
the port is not closed
佛的光辉 2003-09-04
  • 打赏
  • 举报
回复
不好意思,最好改成
If MSComm1.PortOpen = False Then
MSComm1.PortOpen = True
MSComm1.InputLen = 0
MSComm1.Output = "AT" + Chr$(13) + Chr$(10)
Do
DoEvents
if mscomm1.inputlen>0 then temp$ = temp$ & MSComm1.Input
Loop Until InStr(temp$, "OK")
setConnection = True
RaiseEvent addQueueStatus("连接成功!")
End If
佛的光辉 2003-09-04
  • 打赏
  • 举报
回复
If MSComm1.PortOpen = False Then
MSComm1.PortOpen = True
MSComm1.Output = "AT" + Chr$(13) + Chr$(10)
MSComm1.InputLen = 0
Do
DoEvents
temp$ = MSComm1.Input
Loop Until InStr(temp$, "OK")
setConnection = True
RaiseEvent addQueueStatus("连接成功!")
End If
改成
If MSComm1.PortOpen = False Then
MSComm1.PortOpen = True
MSComm1.InputLen = 0
MSComm1.Output = "AT" + Chr$(13) + Chr$(10)
Do
DoEvents
temp$ = temp$ & MSComm1.Input
Loop Until InStr(temp$, "OK")
setConnection = True
RaiseEvent addQueueStatus("连接成功!")
End If
yijiansong 2003-09-04
  • 打赏
  • 举报
回复
提示怎样的错误
flowercat 2003-09-04
  • 打赏
  • 举报
回复
UP
flowercat 2003-09-04
  • 打赏
  • 举报
回复
我设置了On Error GoTo ErrHandler:
只要一运行到input时,就跳到了ErrHandler处理。
On Error GoTo ErrHandler:
MSComm1.CommPort = Port
MSComm1.Settings = Settings
If MSComm1.PortOpen = False Then
MSComm1.PortOpen = True
MSComm1.Output = "AT" + Chr$(13) + Chr$(10)
MSComm1.InputLen = 0
Do
DoEvents
temp$ = MSComm1.Input
Loop Until InStr(temp$, "OK")
setConnection = True
RaiseEvent addQueueStatus("连接成功!")
End If
ErrHandler:
If MSComm1.PortOpen = False Then
setConnection = False
RaiseEvent addQueueStatus("连接失败!")
Else: Timer3.Enabled = True
Timer4.Enabled = True
End If
佛的光辉 2003-09-04
  • 打赏
  • 举报
回复
代码怎样,提示怎样的错误

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧