Я разрабатываю расширение Visual Studio для замены текста в текущем активном .cs-файле с помощью пользовательской команды, которая вызывается из контекстного меню правой кнопки мыши в окне кода.
Доступ к документу пока работает, но если я запускаю более одного экземпляра VS2017, то изменения, которые я ожидаю сделать в новом экземпляре, вносятся в первый открытый экземпляр.
Существует ли возможность получить правильный экземпляр для доступа только к текущему активному документу, независимо от того, сколько экземпляров открыто?
На данный момент я получаю экземпляр со следующим кодом:
dte = (EnvDTE.DTE)System.Runtime.InteropServices.Marshal
.GetActiveObject("VisualStudio.DTE.15.0");
У кого-нибудь есть идеи, как это решить?