主题:在利用MSCOMM控件接收数据时,有时溢出
当程序运行一段时间后,提示 接收溢出
但是我不理解的是 我 设置接收 .InBufferSize = 14 '设置缓冲区接收数据为14字节
但是当接收时提示Data(i + j)越界,14<UBound(Data)<i+j
接收程序如下:
Buffer = MSComm1.Input
Data() = Buffer
For i = 0 To (UBound(Data) - 2)
If ((Data(i) = &HEB) And (Data(i + 1) = &H90) And (Data(i + 2) = &H40)) Then
For j = 0 To 13
buff(j) = Data(i + j)
Next
MSComm1.InBufferCount = 0
next
我已经设置了接收缓冲区数据14,怎么会出现 UBound(Data)=21>14的情况呢?
请指教
但是我不理解的是 我 设置接收 .InBufferSize = 14 '设置缓冲区接收数据为14字节
但是当接收时提示Data(i + j)越界,14<UBound(Data)<i+j
接收程序如下:
Buffer = MSComm1.Input
Data() = Buffer
For i = 0 To (UBound(Data) - 2)
If ((Data(i) = &HEB) And (Data(i + 1) = &H90) And (Data(i + 2) = &H40)) Then
For j = 0 To 13
buff(j) = Data(i + j)
Next
MSComm1.InBufferCount = 0
next
我已经设置了接收缓冲区数据14,怎么会出现 UBound(Data)=21>14的情况呢?
请指教