Word Automation - 禁用警报

时间:2010-11-22 12:30:09

标签: c# .net ms-word office-interop

我正在自动化Word,所以我想禁止所有警报。

Word.Application word = new Word.Application();
word.DisplayAlerts = Microsoft.Office.Interop.Word.WdAlertLevel.wdAlertsNone;

我使用上面列出的代码,但我不断从Word获取消息 - 例如,文档已经打开。有办法避免这种情况吗?如何压制所有那些愚蠢的消息框?

修改
对于所有答案的所有答案,我想看门狗真的是唯一的选择。糟糕的是,去年几乎没有任何变化。

线程可以在没有真正答案的情况下关闭。

1 个答案:

答案 0 :(得分:3)

您发布的代码部分显然看起来是正确的,但我没有足够的重现您描述的行为。然而...

我强烈怀疑答案是你无法完全抑制Word中的邮件。它被设计为用户交互式应用程序,DisplayAlerts设置有点一个命中或错过的命题。某些错误看起来可能会被豁免指定的警报设置并无论如何都会显示。例如,我之前看到拼写和语法错误就像这样。

最好的办法是尝试预测可能发生的错误并避免生成错误。在您的情况下,您应该检查您要打开的文档是否已经存在打开。我不确定你为什么会在第一时间生成这个错误(你是否正在捕获错误并然后搜索文档的现有实例以对其进行操作,或者你如何代码继续运行?),但在开始执行相关代码之前插入一些保护条款应该相当简单。