Office.Interop.Word - app.DisplayAlerts = WdAlertLevel.wdAlertsNone;不禁用警报

Office.Interop.Word - app.DisplayAlerts = WdAlertLevel.wdAlertsNone; Not Disabling Alerts

我试图在 C# 中打开 word 文件时禁用只读警报。我最初尝试 app.DisplayAlerts = false。这没有用,我相信这是因为我有一个更新版本的单词。现在,使用 word.DisplayAlerts = WdAlertLevel.wdAlertsNone 也不会禁用弹出窗口。我不确定为什么,因为我已经看到几个 Whosebug 帖子表明它应该。这是我的代码(将 doc 转换为 docx 的方法的一部分):

Application app = new Application();

app.DisplayAlerts = WdAlertLevel.wdAlertsNone;

var sourceFile = new FileInfo(path);

var document = app.Documents.Open(sourceFile.FullName);

string newFileName = sourceFile.FullName.Replace(".doc", ".docx");
document.SaveAs2(newFileName, WdSaveFormat.wdFormatXMLDocument,
    CompatibilityMode: WdCompatibilityMode.wdWord2010);
app.ActiveDocument.Close();
GC.Collect();
GC.WaitForPendingFinalizers();
app.Quit();
app = null;
GC.Collect();

有什么建议吗?

您是否考虑过以只读方式打开文档?这可以防止只读警报。您必须将 readonly:=true 传递给 document.open 方法。