2000下readfile时一定返回true的
不会有false

解决方案 »

  1.   

    wReadLen 为4?不是读到4个了吗?
      

  2.   

    到这里看看
    http://roaringwind.best.163.com/
      

  3.   

    到这里看看
    http://roaringwind.best.163.com/
      

  4.   

    是啊,因为返回了false所以我去处理了getlasterr啊,还有了,
    虽然wReadLen返回4,但是实际上我去看buf里面,数据根本没有,
    但是我用的那个工具发送数据一定不会出错的,这个我验证过
      

  5.   

    你用ClearCommError函数在WaitCommEvent(hHandle,&wEvent,&readOver)后面查一下此时COMSTAT的cbInque成员值
      

  6.   

    楼上的老兄说的不对,在2000下是可以返回false的
      

  7.   

    我的程序调试了n遍想让他返回 false,都不行。你可以在roaringwind.best.163.com 看到一些文章,大家在2000都是在 readfile 返回true中处理数据
     ResetEvent(readOver.hEvent); //这句你先别要看一看
        WaitCommEvent(hHandle,&wEvent,&readOver);
      

  8.   

    我的程序就是在2000下做的,一般都是返回true,但是在有的情况下确实是返回false,返回true时我查过,确实都读完全了的,返回false时数据读的不太准确
      

  9.   

    在 WaitCommEvent 前别ResetEvent()他就等这个事件呢,还是你要在这SetEvent()