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

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

2 ответа

Решение

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

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

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

Автор спросил про VS2010, поэтому должно быть:

[ProvideAutoLoad(VSConstants.UICONTEXT.SolutionExists_string)]

VSConstants сидеть в:

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

Другие вопросы по тегам