如题:
我写的一串口程序在Debug版本下可以运行、为什么在Release版本下不能运行啊,搞了好几天啦,请问是怎么回事啊,高手帮帮忙啊!感谢不尽!!

解决方案 »

  1.   

    to xzball(波波) :
    握手时通不过,我发55,接收不到响应信号55,请问你们都用什么作串口开发,用api还是串口类,推荐一下好吗?
      

  2.   

    用api功能强大些,限制也少些
      

  3.   

    我用MSCOMM32.OCX. WWW.GJWTECH.COM网站应该去看一下.
      

  4.   

    要注意Debug和Release的内存方式是有不一样的。
      

  5.   

    我的程序也是,一个OPENGLE的程序,DEBUG下可以正常执行,但是在release下就出问题了,大概是访问非法地址,就没法调试了,郁闷的很。
    还没有解决
      

  6.   

    检查一下你的BOOL型变量有没有赋初值,在debug和release下两者初值不一样的
      

  7.   

    多谢大家指点!我后来发现release版本如果让它产生调试信息时就能收到握手信号。不知为何?
      

  8.   

    推荐个软件
    Serial Monitor测试串口不错的关注您的问题~
    我也在调一个串口程序,啥子都是好的,就是读缓冲区的数据,显示到edit box上,时有时无~
      

  9.   

    多谢大家指点!我后来发现release版本如果让它产生调试信息时就能收到握手信号。不知为何?时序问题,你在那加个延时应该也可以。
      

  10.   

    最好把使用MSCOMM初始化的这部分代码贴出来,让大家帮你看看。
      

  11.   

    to lsvine(连山) 
    多谢你的建议不过我把工作线程的优先级由THREAD_PRIORITY_NORMAL降为THREAD_PRIORITY_LOWEST,结果edit box就能正常显示了~,我估计可能是事件响应没有处理好~一般把工作线程的优先级设为哪个级别最好呢?测试数据:
    Port opened by process "CMySerialPDlg.exe" (PID: 1656)Request: 2005-7-13 10:55:28.030819264 73 61 64 61 73 64 61 73 64 61 73 64               sadasdasdasd    Answer: 2005-7-13 10:55:28.501496064 (+0.4706768000 seconds) 73 61 64 61 73 64 61 73 64 61 73 64               sadasdasdasd    Request: 2005-7-13 10:55:45.966609664 (+17.4651136000 seconds) 31                                                1               Answer: 2005-7-13 10:55:46.026696064 (+0.0600864000 seconds) 31                                                1               Request: 2005-7-13 10:55:56.301470464 (+10.2747744000 seconds) BD AB BC C6 BE CD BC C6                           ½«¼Æ¾Í¼Æ        Answer: 2005-7-13 10:55:56.651974464 (+0.3505040000 seconds) BD AB BC C6 BE CD BC C6                           ½«¼Æ¾Í¼Æ
      

  12.   

    可以啦,原来是sprintf做的怪!谢谢大家,结了