关于mscomm的问题,在线等待,实现给分
银木头 2003-11-10 03:18:57 我有一段程序
Private Sub Open_MSCommXJ()
With MSCommXJ
.RThreshold = 1 '当接收缓冲区中的字符数为RThreshold时,触发OnComm事件;
.SThreshold = 1 '在OnComm事件产生之前在传输缓冲区中的最小字符数;
.DTREnable = True '使Data Terminal Ready线有效;
.EOFEnable = True '当找到EOF字符时激活OnComm事件;
.CommPort = Xj_COM '使用 COMn。
.Settings = "9600,e,8,1" '9600波特,偶校验,8位数据,一个停止位。
.InputLen = 0 '当输入占用时, 告诉控件读入整个缓冲区。
' .InputMode = comInputModeText
.PortOpen = True '打开端口。
End With
End Sub
接收程序:
Private Sub MSCommXJ_OnComm()
Dim InString As String
On Error Resume Next
With MSCommXJ
Select Case .CommEvent
Case comEvReceive '值2,收到Rthreshold个字符。
.InputLen = 0
If .InBufferCount Then
Sleep (100)
.InputMode = comInputModeText
Txt_Up.Text = .Input
End If
End Select
End With
End Sub
发送方是vc++或Delphi编写的程序:
如:发送1234.5
可得到的数据老是"???"或"",为什么,如何解决?