Развертывание расширений Visual Studio
Visual Studio поддерживает три формата развертывания расширений: расширение Visual Studio (VSIX), установщик Windows (MSI) и установщик содержимого Visual Studio (VSI).Пользовательские элементы управления также можно зарегистрировать в Visual Studio, используя регистрацию платформы.В этом разделе представлено сравнение разных стратегий развертывания, а также перечислены их возможности.
Выбор метода развертывания
Выберите формат развертывания в зависимости от типа расширения для развертывания и возможностей метода развертывания.
VSIX
После загрузки расширения в формате пакета VSIX Галерея Visual Studio веб-сайт, пользователи могут найти и установить их, установив для расширения сети в расширения и обновления диалогового окна.Дополнительные сведения см. в разделе Установка средств и расширений Visual Studio и управление ими.
Формат VSIX можно использовать для упаковки проекта и шаблоны элементов, Visual Studio пакеты интеграции, управляемые расширения платформы (MEF) компонентов, элементов управления, сборки и пользовательские типы.Формат VSIX использует строгое развертывание на основе файла и не поддерживает запись в глобальный кэш сборок (GAC) или в системный реестр.VSIX является предпочтительным методом развертывания для поддерживаемых им типов расширений.
Для развертывания VSIX должен быть установлен пакет SDK для Visual Studio.Дополнительные сведения см. в разделе развертывание VSIX документации SDK для Visual Studio.
MSI
При создании проекта установки в Visual Studio, добавлении его в решение, содержащее расширение, и построении проекта получается MSI-файл.Формат MSI поддерживает большинство типов приложений и расширений, а также может выполнять такие операции по установке, как запись в глобальный кэш сборок и в системный реестр.В расширения и обновления диалогового окна, можно отображать и установить расширения на основе MSI, но не может включить или отключить их.Дополнительные сведения о развертывании MSI см. в разделе Развертывание с помощью установщика Windows.
![]() |
---|
Запустите devenv /setup после установки или удаления с расширением MSI. |
VSI
Установщик содержимого Visual Studio не поддерживает загрузка коллекции Visual Studio, удалить или запись в системный реестр или глобальный кэш СБОРОК.Тем не менее его можно использовать для развертывания надстроек и фрагменты, которые не поддерживают формат VSIX кода.Дополнительные сведения см. в разделе Практическое руководство. Упаковка компонентов для использования установщика содержимого Visual Studio.
Регистрация в платформе
В следующем списке перечислены возможности, поддерживаемые регистрацией AssemblyFoldersEx.
Массовая установка всех элементов управления в каталоге без их индивидуальной регистрации.
Поддержка назначения значков и группирования элементов управления в панели элементов.
Включение сборок в диалоговом окне Добавление ссылок Visual Studio и, дополнительно, элементов управления в диалоговом окне Выбор элементов панели элементов.
Упрощенная регистрация в единственном месте раздела реестра базовой платформы.Это позволяет исключить сложность проверки различных номеров SKU Visual Studio и поиска каждого корневого ключа.
Поддержка единственной сборки элементов управления с несколькими сборками времени разработки, которые предназначены для конкретных версий Visual Studio или версий Expression Blend.
Сведения и примеры, касающиеся использования этих возможностей, приведены в разделе Развертывание сборок пользовательских элементов управления и сборок времени разработки.
Регистрация платформы в MSI
Чтобы добавить сборки в диалоговое окно Добавление ссылок и элементы управления в диалоговое окно Выбор элементов панели элементов, необходимо зарегистрировать сборки в разделе реестра AssemblyFoldersEx управляемой платформы.Чтобы установить элементы управления панели элементов, используя значки и позицию табуляции, необходимо также задать значения в разделе реестра Toolbox.Дополнительные сведения см. в разделе Развертывание сборок пользовательских элементов управления и сборок времени разработки.
Поддерживаемые типы расширений
В следующей таблице представлены форматы пакетов, поддерживающие различные типы расширений.
Тип расширения |
VSIX |
MSI |
VSI |
Регистрация в платформе |
---|---|---|---|---|
Шаблон проекта |
Да |
Да |
Да |
Нет |
Шаблон элемента |
Да |
Да |
Да |
Нет |
Сборка |
Да |
Да |
Нет |
Да |
Компонент MEF |
Да |
Да |
Нет |
Нет |
VSPackage |
Да |
Да |
Нет |
Нет |
Элемент управления панели элементов |
Да |
Да |
Да |
Да |
Надстройка |
Нет |
Да |
Да |
Нет |
Фрагмент кода |
Нет |
Нет |
Да |
Нет |
Пользовательский тип расширения |
Да |
Да |
Нет |
Нет |
Поддерживаемые возможности
В следующей таблице представлены форматы пакетов, поддерживающие различные параметры установки.
Возможность |
VSIX |
MSI |
VSI |
Регистрация в платформе |
Регистрация платформы в MSI |
---|---|---|---|---|---|
Включение и отключение установленного расширения |
Да |
Нет |
Нет |
Нет |
Нет |
Проверка наличия обновлений |
Да |
Нет |
Нет |
Нет |
Нет |
Запись в системный реестр |
Нет |
Да |
Нет |
Да |
Да |
Регистрация с помощью глобального кэша сборок |
Нет |
Да |
Нет |
Да |
Да |
Конфигурация во время установки |
Нет |
Да |
Нет |
Да |
Да |
Отправка в коллекцию Visual Studio |
Да |
Да |
Нет |
Нет |
Нет |
Установка при двойном щелчке |
Да |
Да |
Да |
Нет |
Да |
Присутствие в диалоговом окне Выбор элементов панели элементов |
Нет |
Да |
Нет |
Да |
Да |
Присутствие в диалоговом окне Добавление ссылок |
Нет |
Да |
Нет |
Да |
Да |
Установка до (или после) Visual Studio |
Нет |
Да |
Нет |
Да |
Да |
Целевые дополнительные конструкторы, например Expression Blend |
Нет |
Да |
Нет |
Да |
Да |
Публикация
Любое расширение Visual Studio можно распределить, поместив его на веб-сайт или в сетевую папку.Если пакет развертывания в формате VSIX, или MSI, его можно сделать доступным для расширения и обновления диалоговое окно для всех пользователей Visual Studio путем передачи его в Галерея Visual Studio веб-узел, который делает пакет видимым в расширения и обновления диалогового окна.Расширения других типов можно добавить в коллекцию как ссылки.
См. также
Задачи
Основные понятия
Развертывание сборок пользовательских элементов управления и сборок времени разработки
Другие ресурсы
Настройка, автоматизация и расширение среды разработки
Установка средств и расширений Visual Studio и управление ими