У меня есть текстовый документ, содержащий одну страницу, которую я хотел бы использовать в качестве шаблона для создания другого текстового документа. Новый документ будет содержать несколько страниц с замененным содержимым со страницы шаблона.
**Document 1**
Page 1 (Template Page)
**Document 2**
Page 1 (Copy of Template Page)
Page 2 (Copy of Template Page)
Page 3 ...
Шаблон на данный момент содержит только строку «Test #», и я хотел бы заменить «#» номером текущей страницы. Мой текущий код выглядит следующим образом и должен создать новый документ, содержащий две страницы.
string filename = @"C:\xxxxx_in.docx";
Microsoft.Office.Interop.Word.Application oWord = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document oDoc2 = oWord.Documents.Add();
for (int i = 1; i < 3; i++)
{
Microsoft.Office.Interop.Word.Document oDoc1 = oWord.Documents.Open(filename);
object matchCase = false;
object matchWholeWord = true;
object matchWildCards = false;
object matchSoundsLike = false;
object matchAllWordForms = false;
object forward = true;
object format = false;
object matchKashida = false;
object matchDiacritics = false;
object matchAlefHamza = false;
object matchControl = false;
object read_only = false;
object visible = true;
object replace = 2;
object wrap = 1;
object findText = "#";
object replaceWithText = i.ToString();
oDoc1.Content.Find.Execute(ref findText, ref matchCase, ref matchWholeWord,
ref matchWildCards, ref matchSoundsLike, ref matchAllWordForms, ref forward, ref wrap, ref format, ref replaceWithText, ref replace,
ref matchKashida, ref matchDiacritics, ref matchAlefHamza, ref matchControl);
Microsoft.Office.Interop.Word.Range oRange = oDoc1.Content;
oRange.Copy();
oDoc2.Range(oDoc2.Content.End - 1, oDoc2.Content.End - 1).Paste();
oDoc1.Close();
}
object outputFileName = @"C:\xxxxx_out.docx";
oDoc2.SaveAs(ref outputFileName);
oWord.Quit();
Проблема в том, что я получаю исключение для строки ...
oDoc2.Range(oDoc2.Content.End - 1, oDoc2.Content.End - 1).Paste();
System.Runtime.InteropService.COMException: «вызванный объект имеет
отключен от своих клиентов. "
Как я могу это исправить? Спасибо за помощь!