本帖最后由 anneall 于 2011-03-15 13:05:32 编辑

解决方案 »

  1.   

    你说的是receivebytes****这个属性吧,我设置了的啊,设置的是1线程间的访问也加了委托的
      

  2.   

    如果加入定时访问缓存会比较耗资源datareceived事件触发是比较好的选择但是我还没有搞懂发送字符串、接收字符串、事件触发之间的运行机制或关系,头疼啊
      

  3.   

    你的第一种方法可以这样试一下:用一个循环读取,直到读到你协议规定的结束符received += m_Serial.ReadExisting();
    if (received.IndexOf("\x00") >= 0)//"\x00"要根据你的通讯协议而定
       {
       }
      

  4.   

    datareceived以前用时发现经常会掉数据的,还是定时读的保险啊
      

  5.   

    循环读取吧,发送相对简单吧,COM的最大的问题是,如果对方不回复接受成功的消息,根本不知道是否发送成功了,COM口发送的时候,注意要有一定的间隙,太快会丢数据的