如果我的应用程序崩溃,则Microsoft Visual C ++运行时库“运行时错误!”发生。
信息的内容是:
该应用程序已要求运行系统以不寻常的方式终止
请联系应用程序的支持团队以获取更多信息。
我知道,我需要解决所有这些问题,但我想这个错误并没有出现在过去。 Visual Studio 2005中是否有一个选项来启用/禁用此类错误(处理)?相反,我希望应用程序只是崩溃/退出并提供Microsoft Windows错误报告。
答案 0 :(得分:9)
如果未处理异常并且调用unexpected()
或者在堆栈展开期间异常转义析构函数并且调用terminate()
,则会显示此错误消息。两者都会导致abort()
被调用,其abort()
实现会显示消息框。此行为是在VS2k3,VS2k5和VS2k8中设计的。它真的很烦人,特别是在没有人为干预的情况下运行的应用程序(例如每日构建)。
您可以解决此问题 - 使用catch(...)
来捕获顶级的所有异常,并使用terminate()
设置您自己的set_terminate()
处理程序。
答案 1 :(得分:0)
使用:
_set_abort_behavior( 0, _WRITE_ABORT_MSG);