今天修改了以前一个项目的代码,是一个exe程序 C++ builder xe2 编译。以前都是好的。今天改了一下版本号 编译了一下,居然不能用了。直接崩溃 提示内存非法访问。而且显然还没有进入WinMain就崩溃了,这种一般是最不好调试的。用OD调试了半天也没有看出个所以然。检查了一下最近改过的代码,都没有发现问题。
之后改为Debug版本直接单步执行发现没有问题。所以继续执行也没有问题。索性直接运行也没有问题。操蛋原来Debug是好的。百思不得其解,看了看相关_DEBUG宏的代码也没有什么问题。搞了一个小时没有搞好。
最后尝试了一下Clean,编译运行,之后居然好了。然后又编译一下运行又崩溃。最后Clean一下编译之后,直接发布了。
根本原因没有找到,但是问题算解决了。
在此记一下,以免下次遇到这个问题又搞一个小时。