Найдите, какой документ Word является ActiveDocument из открытых окон Word.Application - PullRequest
0 голосов
/ 13 июня 2019

Я пытаюсь найти открытый активный текстовый документ, и если открыто несколько текстовых сессий, то какая из них активная, какая на переднем плане.Я начал с:

объект winword;Microsoft.Office.Interop.Word.Document wrddoc;winword = System.Runtime.InteropServices.Marshal.GetActiveObject ("Word.Application");wrddoc = winword.ActiveDocument;

Это выдает ошибку, что «объект не содержит определения для ActiveDocument и не имеет метода расширения ...

Я тоже пробовал этот пост ( Получить активнымобъект Word word C # )

object word; Word.Document _activeDocument;

    try
    {
        word = System.Runtime.InteropServices.Marshal.GetActiveObject("Word.Application");
        //If there is a running Word instance, it gets saved into the word variable
    }
    catch (Exception ex)
    {
        //If there is no running instance, it creates a new one
        Type type = Type.GetTypeFromProgID("Word.Application");
        word = System.Activator.CreateInstance(type);
    }


    Word.Application oWord = (Word.Application) word;
    _activeDocument = oWord.ActiveDocument;

Этот код выдает ошибку «Ожидаемый улов или, наконец,« Word.Application oWord »

Есть идеи о том, что мне нужно делать?В конце я пытаюсь найти активный документ Word, чтобы сохранить его на жестком диске.Спасибо за вашу помощь.

...