VSIX: выполнение кода при запуске VS

#visual-studio-2010 #vsix

#visual-studio-2010 #vsix

Вопрос:

Я хотел бы вызвать некоторый код из расширения VSIX, когда Visual Studio загружает решение, как мне это сделать? Package::Initialize вызывается только тогда, когда пользователь нажимает кнопку моего добавления в первый раз.

Ответ №1:

Попробуйте добавить следующий атрибут в свой класс VSPackage:

 [ProvideAutoLoad(Microsoft.VisualStudio.Shell.Interop.UIContextGuids80.SolutionExists)]
  

Это приведет к загрузке вашего пакета при открытии / создании решения.

Ответ №2:

Автор спросил о VS2010, так что это должно быть:

 [ProvideAutoLoad(VSConstants.UICONTEXT.SolutionExists_string)]
  

VSConstants находятся в:

Microsoft Visual Studio 2010 SDK SP1 VisualStudioIntegration Common Assemblies v4.0 Microsoft.VisualStudio.Shell.10.0.dll