问题描述
- MFC生成release版本的exe程序,崩溃,故障模块是StackHash_31f3
-
MFC的基于单文档的程序,是release版本的;用程序调试(F5),不会出现问题;直接运行生成的exe程序(在本机上哈),出现问题,见下:
***(exe文件名)已经停止工作
windows可以联机检测该问题的解决方案。
问题签名:
问题事件名称: APPCRASH
应用程序名: test.exe
应用程序版本: 1.0.0.1
应用程序时间戳: 5604b29f
故障模块名称: StackHash_31f3
故障模块版本: 6.1.7601.18933
故障模块时间戳: 55a69e20
异常代码: c0000374
异常偏移: 000ced0b
OS 版本: 6.1.7601.2.1.0.256.1
区域设置 ID: 2052
也是醉了,第一次出现这种问题。系统是win7
都不知道该如何下手找问题!
解决方案
F5调试的时候有没有发现内存泄漏
解决方案二:
应该是有小范围的内存访问越界,在 Debug 版本下没有表现出来,但在 Release 版本就出现了,这很正常的。
解决方案三:
栈溢出,一般是数组越界,函数调用 约定错误,scanf ,printf 参数不匹配
以及其他 行为导致的越界
解决方案四:
直接用编译器中断调试,然后查看你的代码的callstack等。
解决方案五:
release模式下打开调试信息输出,运行下,看看蹦在了哪里
解决方案六:
你单步调试一下吧,看到底是什么问题导致的。
解决方案七:
统一回复一下哈,调用的dll中包含的预编译命令,没有在工程中包含,导致出现的错误!
前期错误没有体现出来,是因为预编译下的函数没有被用到!
解决方案八:
不过还得谢谢大家的帮忙哈!
时间: 2024-10-30 03:53:20