【发布时间】:2012-09-09 20:22:28
【问题描述】:
我正在开发一个不断打开 IE、执行任务、关闭它然后重复的应用程序。但是,如果 IE 在执行期间崩溃,系统准备继续进行下一次迭代,但是错误报告保持打开状态并且不允许进程完全关闭。这意味着它会继续占用内存,直到用户单击说忽略错误的对话框。
目前我正在研究两种解决方案,使用 VectoredExceptionHandlers,以及完全禁用 WER 的能力。
我对 VectoredExceptionHandlers 的理解是,它们会拦截我的应用程序抛出的任何异常,并在它们进入 WER 之前对其进行处理。但是,由于崩溃实际上发生在我的应用程序启动的 IE 进程中,我不确定这些处理程序是否仍然能够阻止 WER 接收异常。
我也不希望像 StackOverflow 上的其他问题所建议的那样在系统上完全禁用 WER,我只希望在我的应用程序运行时禁用它。
有没有人对这些选项有更多的了解或有更好的方法来处理这个问题?
【问题讨论】:
-
我想指出,WER 并不是唯一需要禁用的类似 WER 的麻烦。 Windows 上还有其他几种无处可寻的对话拍摄机制。如果这个 questoin 可以发展成一个全面的参考来禁用它们,那就太好了。
标签: c++ windows-error-reporting