visualstudio2008解决方案发布版本运行时致命错误



我有一个Visual Studio 2008解决方案,它由一些项目组成,并将dll与它们的头一起使用。在调试版本中,它(解决方案)运行得非常好。在发行版中,它编译成功,但在执行dll文件中定义的一些函数时失败。

正如我所说,该解决方案在调试模式下运行良好,并且选项设置正确。尝试关闭
优化,打开调试信息,但没有帮助。问题的原因是什么?

我以前见过很多次这种情况。在中,几乎所有情况下,在写入数组或其他数据结构时都发现问题是越界错误。在其他情况下,使用了未初始化的变量。

你的代码中有一个错误。这是肯定的。当您在Debug设置下构建时,编译器会为您做很多事情来掩盖某些类型的问题。编译器将编写零初始化某些内容的代码,从而掩盖未初始化的变量问题。

我要做的第一件事就是把警告级别调高到最高设置。无论如何,你应该一直这样做。这往往会揭示问题。只要确保修复编译器告诉您的问题。不要用#pragma或华而不实的造型来掩饰他们。通过代码的下一步来隔离问题。这可能既困难又耗时,但也有一线希望。无论问题是什么,你重复错误的可能性与识别和修复错误的时间和难度成反比。:)

最新更新