c++ - 可以禁用 "Application Error"对话框吗?

标签 c++ windows debugging memory build-automation

我使用 Hudson 作为持续集成服务器来测试 C/C++ 代码。不幸的是,我在某个地方有一个导致内存损坏的错误,所以在某些 Windows 机器上,我有时会收到一个“应用程序错误”对话框,解释说一条指令引用了无法读取的内存。弹出此对话框,基本上挂起测试运行,因为它需要手动干预。

有没有办法阻止此对话框出现,从而使测试运行简单地失败并在 Hudson 中报告为这样?

是否可以自动生成 minidump 而不是显示对话框?

最佳答案

  1. 按照 Gently 先生的建议,使用“禁用错误报告”。另见 this PC World article .
  2. 如果您的构建机器上碰巧有 MS Visual Studio,它会捕获应用程序错误并弹出一个对话框。要禁用这些对话框(以及 Visual Studio 的即时调试功能),请运行命令 drwtsn32.exe -i 将 Dr. Watson 设置为默认系统调试器。 Watson 博士将生成核心转储并静默退出。 (请参阅此 Microsoft 知识库文章:http://support.microsoft.com/kb/q121434/。)

关于c++ - 可以禁用 "Application Error"对话框吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/735170/

相关文章:

windows - ejabberd模块编译错误

windows - 我应该使用哪个版本的 MSXML?

c++ - 指向任意函数的 "general function signature"指针

javascript - 在 javascript 错误上,如何识别有问题的方法或 js 文件?

python - 尝试在 ECC 上添加两个点,但第三个点始终不在曲线上

ios - 调试 xcode 4 : says it's running application on device, 但实际上什么也没发生

c++ - Qt使ctor调用两次

c++ - 如何通过成员函数指针调用基类方法?

c++ - C++中链表的冒泡排序

c++ - 关于C++模板特化和部分模板特化的疑问