你好!很感谢你上次回答了我的问题。按照这个思路,我现在先设定了一个块头,包含 起始字节+数据长度 (如DD+02),  把RThreshold设置为2,把inputlen也设置为2,然后在 Comm1_OnComm()中首先取这2个字节进行判断,之后根据数据长度, 等待Comm1.InBufferCount到达指定数的时候再把Inputlen设置为0,一次性全部读取。现在又出现了新的问题,发送第一个有效数据包,需要等很久才能收到并解析。 收到这第一个数据包之后,再发送其他的就能顺利的正常收发。设断点调试发现,第一次发送数据,触发Comm事件的时候,CommEvent总是1,但是应该是2才对啊。所以进入不了 Case comEvReceive 。请教一下这是什么原因?如何解决?