2015-11-03 109 views
-2

我嘗試通過代碼打開兩個文檔,以使它們對用戶比較版本(合法黑線)可見 - 編輯文檔將在可見文檔中完成。Word自動化使用DefaultLegalBlackline打開兩個文檔來比較文檔

這是我的代碼片段:

objectoMissing = System.Reflection.Missing.Value; 

//Start Word and create a new document. 
Microsoft.Office.Interop.Word._Application oWord; 
Microsoft.Office.Interop.Word._Document oDoc; 
oWord = new Microsoft.Office.Interop.Word.Application(); 
oWord.Visible = true; 

oDoc = oWord.Documents.Add(ref oMissing, ref oMissing, ref oMissing, ref oMissing); 

oWord.DefaultLegalBlackline..... 

回答

0

我已經找到了解決辦法:

oDoc1 = oWord.Documents.Open(@"Word1.docx", oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing); 

oDoc2 = oWord.Documents.Open(@"Word2.docx", oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing); 

oDoc = oWord.CompareDocuments(oDoc1, oDoc2, Microsoft.Office.Interop.Word.WdCompareDestination.wdCompareDestinationOriginal, Microsoft.Office.Interop.Word.WdGranularity.wdGranularityCharLevel, true, false, true, true, false, false, false, false, false, false, "", false); 

oDoc2.Close(oMissing,oMissing,oMissing); 

有沒有開放的解決方案第一兩份文件,然後關閉沒有打開第二個文檔,因爲這是不需要的。

1

請參考下面一類作爲樣品溶液:

using WordR = Microsoft.Office.Interop.Word; 
    namespace WordTest 
    { 
     class TestComparison 
     { 
      private void openWordForComparison(object filenameMaster, object filenameModified) 
      { 
       WordR.Application app = null; 
       WordR.Document docMaster = null; 
       WordR.Document docModified = null; 
       WordR.Document docComparison = null; 
       object missing = System.Reflection.Missing.Value; 
       //create a readonly variable of object type and assign it to false. 
       object readonlyobj = false; 


       //create a word application object for processing the word file. 
       app = new WordR.Application(); 

       // Open frist document 
       docMaster = app.Documents.Open(
       ref filenameMaster, ref missing, ref readonlyobj, ref missing, ref missing, 
       ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); 

       // Open second document 
       docModified = app.Documents.Open(
       ref filenameModified, ref missing, ref readonlyobj, ref missing, ref missing, 
       ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); 

       // open a new document for comparison of documents 
       docComparison = app.CompareDocuments(docMaster, docModified); 

       // close first and second document to display comparison only 
       docMaster.Close(ref missing, ref missing, ref missing); 
       docModified.Close(ref missing, ref missing, ref missing); 

       app.Visible = true; 

      } 
     } 
    }