2011-02-22 44 views
4
Microsoft.Office.Interop.Word.ApplicationClass msDoc = new Microsoft.Office.Interop.Word.ApplicationClass(); 
msDoc.Visible = false; 
msDoc.Application.Visible = false; 
msDoc.Documents.Open(ref docPath, ref UNKNOWN, 
        ref READ_ONLY, ref UNKNOWN, ref UNKNOWN, 
        ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, 
        ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, 
        ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, ref UNKNOWN); 
msDoc.WindowState = Microsoft.Office.Interop.Word.WdWindowState.wdWindowStateMinimize; 
object format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF; 
msDoc.ActiveDocument.SaveAs(ref target, ref format, 
          ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, 
          ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, 
          ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, 
          ref UNKNOWN, ref UNKNOWN, ref UNKNOWN, 
          ref UNKNOWN, ref UNKNOWN); 

問題是,執行SaveAs時會出現一個對話框。我試圖以編程方式禁用該對話框,以便用戶永遠不必提供Office/Word的輸入或配置。我正在寫的實用程序可能會有100次保存,所以彈出對話框不好。如何禁用「正在保存的文檔包含跟蹤的更改」Word對話框使用C#

回答

11

我能找出通過設置以下選項中我的代碼編程解決方案:

msDoc.Options.WarnBeforeSavingPrintingSendingMarkup = false; 

配置聰明,我發現你也可以通過進入禁用此Office功能:

Word選項 - >信任中心 - >隱私選項 - >取消選中「打印前警告,保存或發送包含修訂或批註的文件」

2
msDoc.Options.WarnBeforeSavingPrintingSendingMarkup = false; 

的Word選項 - >信任中心 - >隱私選項 - >取消選中「打印前警告,保存或發送包含修訂或批註的文件」

不會爲我工作。

我什麼工作原理是:

msDoc.ActiveWindow.Close(WdSaveOptions.wdDoNotSaveChanges);

+1

我希望我能投票這十幾次...有一個郵件合併模板的保存對話框的問題,這完全保存了我的培根 – 2016-04-15 22:39:30