Я пытаюсь написать приложение на C #, которое найдет документ открытым в MS Word и напишет некоторый текст в конец документа, используя взаимодействие слов.Возможно ли это?
Я знаю, что можно решить эту проблему, используя Process и Sendkeys, встроенные в .NET Framework, но я бы хотел решить эту проблему с помощью Word Interop, чтобы я мог добавить больше функциональности вниздорога (также sendkeys действительно решит проблему только в определенных особых случаях.)
Спасибо!
Обновление:
У меня работает следующее частичное решение:
Application wordApp = new Application();
wordApp.Visible = true;
wordApp.Documents.Add();
Range rng = wordApp.ActiveDocument.Range(0, 0);
rng.Text = "New Text";
Но я бы хотел использовать уже открытый экземпляр слова вместо создания нового,Спасибо!
Обновление 2:
Я близок!Следующий код работает с отключенным UAC
Application wordApp = (Word.Application)Marshal.GetActiveObject("Word.Application");
Range rng = wordApp.ActiveDocument.Range(0, 0);
rng.Text = "New Text";
Но я не уверен, как заставить его работать с включенным UAC.UAC не вызывает никаких ошибок или исключений, он просто не записывает текст в открытый документ.
Спасибо за помощь всем, пока конец не виден:)!
Обновление 3:
Просто попробовал еще раз с включенным UAC и все заработало ... странно.Тем не менее, если вам известны какие-либо полезные ресурсы о взаимодействии и UAC в целом, пожалуйста, оставьте ссылку здесь!