当我从Perl调用命令时,如何禁止“通知Microsoft”崩溃对话框?

时间:2010-03-30 02:00:36

标签: windows perl command-line crash system

我从Perl脚本调用命令行程序。当这些程序崩溃时,我会收到一个消息框,提示我是否要通知Microsoft。由于这是一个自动化系统,因此我希望能够抑制该消息并继续使用我的脚本中的其他内容。这可能吗?

4 个答案:

答案 0 :(得分:1)

当程序崩溃时,您可能可以使用WerAddExcludedApplication function来阻止WER进入。您应该使用WerRemoveExcludedApplication再次恢复排除帽子。

答案 1 :(得分:1)

答案 2 :(得分:0)

在Windows错误报告(WER)下启用此组策略应该可以解决问题(现在进行测试,因为我遇到了同样的问题): https://www.raymond.cc/blog/disable-program-has-stopped-working-error-dialog-in-windows-server-2008/

如果您执行某个程序并且在您的perl脚本中的system()调用内部崩溃,则不会弹出任何弹出窗口。 但请注意,该政策将是全系统的;如果您的系统用于批处理作业,则没问题。

答案 3 :(得分:-1)

问题听起来不像是Perl问题,听起来像是系统命令的问题。你的意思是“当这些程序崩溃时”。你的系统程序?

这取决于导致崩溃的原因。这是“Dr。Watson”错误/ WinQUAL功能,对于纯Perl代码实际上不应该发生,如果是这样,这意味着Perl解释器崩溃并且您有Perl错误或正在使用崩溃的本机扩展,确保您拥有Perl或任何本机扩展的最新稳定版本。把它缩小到崩溃的地方。

您还可以从Windows控制面板完全关闭​​Windows错误报告功能。