我碰到一个问题。
程序Debug与Release的版本在VS2003中运行,退出都很正常不会报错,但是在外面独立运行程序的时候退出的时候程序就会报出内存读写错误,应该是窗口销毁的问题,但是不知为什么在调试器中调试一直不会出现这个问题?高人指教!

解决方案 »

  1.   

    在VS2003中运行,是调试运行,还是非调试运行. 有可能跟运行速度与机会相关.比如有多线程什么的, 线程还未退出, 窗口却已经销毁.否则你就只有打印程序执行日志了. OutputDebugString  使用DebugView查看.
      

  2.   

    单步调试不了, 只能用outputdebugstring()
      

  3.   

    已经定位到了问题,在VS中同一个对象调用了两次OnDestory没有报错,Debug版本的程序也不会报错。但是单独跑程序是会报错的。
      

  4.   


    你试试release报错不?....我有点怀疑.
      

  5.   


    巨大的差别是运用到的路径,外部参数不同。可能楼主使用没有做相关保护。在那里打上日志Log
      

  6.   

    早晨找到的错误不对,因为程序太大,走到最后销毁的时候都不知道到底是哪里报的错。在Release与Debug的时候F5运行都没有报错。
    另外我的程序用了BCG的界面库,不知道有没有影响。
      

  7.   

    Release在VS中F5运行没有错,Debug也是。但是你在外面双击运行退出时是会报错的