【问题标题】:Disable Microsoft Visual C++ Runtime Error禁用 Microsoft Visual C++ 运行时错误
【发布时间】:2009-12-21 07:39:02
【问题描述】:

如果我的应用程序崩溃,Microsoft Visual C++ 运行时库“运行时错误!”发生。

消息的正文是:
此应用程序已请求运行时以不寻常的方式终止。
请联系应用程序的支持团队了解更多信息。

我知道,我需要解决所有这些问题,但我想这个错误过去没有出现。 Visual Studio 2005 中是否有启用/禁用此类错误(处理)的选项?相反,我希望应用程序崩溃/退出并提供 Microsoft Windows 错误报告。

【问题讨论】:

  • 我希望您的程序有一些副作用,现在由于编译器更改并开始给出错误消息而无效。

标签: visual-studio visual-c++ runtime-error


【解决方案1】:

如果未处理异常并调用unexpected(),或者如果异常在堆栈展开期间转义析构函数并调用terminate(),则会出现此错误消息。两者都导致abort() 被调用,其abort() 实现显示消息框。这种行为是在 VS2k3、VS2k5 和 VS2k8 中设计的。这真的很烦人,尤其是在无需人工干预的情况下运行的应用程序(例如每日构建)。

您可以解决此问题 - 使用 catch(...) 在顶层捕获所有异常并使用 set_terminate() 设置您自己的 terminate() 处理程序。

【讨论】:

    【解决方案2】:

    使用:

    _set_abort_behavior( 0, _WRITE_ABORT_MSG);
    

    【讨论】:

      猜你喜欢
      • 2012-11-25
      • 1970-01-01
      • 2022-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-17
      • 2012-10-28
      • 1970-01-01
      相关资源
      最近更新 更多