Анатомия расширения Visual Studio
Пакет VSIX — это VSIX-файл, содержащий одно или несколько расширений Visual Studio и метаданные, которые Visual Studio использует для классификации и установки расширений. Формат пакета VSIX соответствует стандарту Open Packaging Conventions (OPC), что означает, что его можно открыть любым средством, которое может открывать ZIP-файлы.
Проект расширения — это проект C# с несколькими дополнительными компонентами, которые делают его уникальным. В следующем видео рассматривается проект расширения, чтобы лучше понять, как работают проекты расширений:
Структура файла
При создании новых расширений с помощью шаблона проекта VSIX w/Command (Community) структура файла выглядит следующим образом:
Vsixmanifest-файл является основным файлом. Это XML-файл, содержащий сведения о расширении, используемом Visual Studio. Все компоненты расширения регистрируются в vsixmanifest-файле . Это единственный обязательный файл в проекте VSIX.
Vsct-файл VSCommandTable.vsct является местом объявления команд. Это XML-файл и содержит определения команд кнопки, меню, сочетания клавиш и многое другое. Файл компилирует его содержимое в большой двоичный объект в выходных .dll, который Visual Studio использует для создания всей структуры меню командной таблицы. Этот файл объявляет только компоненты в командной таблице; Он не обрабатывает вызовы команд.
Файл *Package.cs — это класс Package, который является точкой входа для большинства расширений. Здесь часто можно найти обработчики команд, окна инструментов, страницы параметров, службы и другие компоненты, зарегистрированные.
табличных переменных
Проект компилируется в VSIX-файл, расположенный в папке /bin/debug или /bin/release , которая зависит от текущей конфигурации сборки решения. Рабочая нагрузка разработки расширений Visual Studio предоставляет выделенные целевые объекты и задачи MSBuild для обработки вкуса проекта VSIX.
При сборке проекта VSIX он автоматически развертывается в экспериментальном экземпляре. Это можно контролировать в параметрах проекта VSIX:
Экспериментальный экземпляр
Чтобы защитить среду разработки Visual Studio от непроверенных приложений, которые могут изменить его, VSSDK предоставляет экспериментальное пространство, которое можно использовать для экспериментов. Вы разрабатываете новые приложения с помощью Visual Studio как обычно, но выполняете их с помощью этого экспериментального экземпляра.
Каждое приложение с пакетом VSIX запускает экспериментальный экземпляр Visual Studio в режиме отладки.
Если вы хотите запустить экспериментальный экземпляр Visual Studio вне определенного решения, выполните следующую команду в командном окне:
devenv.exe /RootSuffix Exp
Дополнительные понятия расширяемости см . в полезных ресурсах, которые пригодятся для выполнения этого набора средств.