For i = 0 To DelayLoop '40000000
Next
换成
sdate = Now()
N = MSComm1.InBufferCount
Do While DateDiff("s", sdate, Now) < 8
If N >= 3 Then
Exit Do
Else
N = MSComm1.InBufferCount
End If
Loop
试试
Private Sub MSCommTracer_OnComm()
Dim i As Long
Dim BufferText As String
Dim Rtmp
Dim tempStr As String
Dim MScommInput As String
Dim mscomminputLen As Integer
Dim Tp As Variant
For i = 0 To DelayLoop '40000000
Next
If MScommInput <> "" And MScommInput <> vbCrLf Then
BufferText = BufferText & MScommInput
If MSCommTracer.InBufferCount <> 0 Then
Do
BufferText = BufferText & MScommInput
Loop Until MSCommTracer.InBufferCount = 0
End If
MSCommTracer.InBufferCount = 0
ReceiveStr = BufferText
Tp = Split(ReceiveStr, vbCrLf)
End If
End Sub
data bit:7
parity:none
flow control:Xon/RTS
HandShaking 0-comxlone
inbuffersize:1024
out:512
inputmode:0-cominputmodetext