Поделиться через


Область автоматизации Visual Studio

Visual Studio обеспечивает три различных уровня расширения среды: макросы, надстройки и мастеры, а также Visual Studio SDK.

Макросы

Макросы — это самой простой способ расширения интегрированной среды разработки Visual Studio с использованием кода. Макросы не только позволяют записывать несколько действий в среде IDE, а затем воспроизводить их с помощью одной команды, но и изучать модель автоматизации Visual Studio при записи. Для макросов также имеется среда разработки Macros IDE, которая основана на интегрированной среде разработки Visual Studio IDE и предполагает использование языка Visual Basic. Среду Macros IDE можно использовать для создания, изменения и отладки макросов. Дополнительные сведения о макросах см. в разделе Автоматизация повторяющихся действий с помощью макросов.

Надстройки и мастера

Надстройки являются приложениями, которые присоединяются к среде IDE и используются в ней для экономии времени и усилий. Они являются COM-объектами, которые реализуют интерфейс Extensibility и осуществляют связь с интегрированной средой разработки через базовую модель объектов автоматизации, содержащуюся в сборках EnvDTE. Модель панели инструментов хранится в Microsoft.VisualStudio.CommandBars.

Различные языки программирования в Visual Studio предоставляют дополнительные объекты автоматизации, используя собственные сборки. Некоторые сборки автоматизации для отдельных продуктов приведены в следующей таблице.

Имя сборки

Описание

VSLangProj

Модель автоматизации проектов Visual Basic и Visual C#.

VSLangProj2

Модель автоматизации проектов Visual Basic и Visual C#.

VSLangProj80

Модель автоматизации проектов Visual Basic и Visual C#.

VslangProj90

Модель автоматизации проектов Visual Basic и Visual C#.

VslangProj100

Модель автоматизации проектов Visual Basic и Visual C#.

Microsoft.VisualStudio.VCCodeModel

Модель автоматизации кода Visual C++.

Microsoft.VisualStudio.VCProject

Модель автоматизации проекта Visual C++.

Microsoft.VisualStudio.VCProjectEngine

Модель автоматизации проекта Visual C++.

Microsoft.VisualStudio.VsWizard

Модель автоматизации мастера Visual C++.

Поскольку надстройки являются компилированным двоичным кодом, интеллектуальная собственность автора остается защищенной. Надстройки можно реализовать на любом языке, использующем COM: Visual C++, Visual Basic, Visual C# и др.

Для многих разработчиков использование макросов достаточно для программирования в модели автоматизации Visual Studio. Однако в ряде случаев разработчики (например, независимые разработчики ПО) могут отдавать предпочтение надстройкам, когда необходимо обеспечить тесную интеграцию новых возможностей со средой IDE. Надстройки добавляют эти возможности в интегрированную среду разработки Visual Studio, как если бы они были встроенными.

Надстройки позволяют выполнять следующие действия, невозможные для макросов:

Мастеры представляют собой приложения, проводящие пользователя через пошаговый процесс создания программ или выполнения задач программирования. Например, Visual Studio содержит мастер надстроек, призванный помочь пользователям в создании проектов надстройки и проектов развертывания. Для создания собственных мастеров можно построить проект, реализующий интерфейс IDTWizard. Мастера обычно вызываются через диалоговые окна Создать проект или Создать файл.

Пакет Visual Studio SDK

Макросы, надстройки и мастера выполняют все функции, необходимые большинству пользователей. Однако некоторым пользователям необходимы другие функции, не предоставляемые моделью автоматизации Visual Studio. Например, пользователь может внедрить абсолютно новый редактор или язык программирования в интегрированную среду разработки Visual Studio. Для этого понадобятся следующие элементы:

  • Новый тип проекта

  • Пользовательский редактор

  • Дополнительные возможности отладки

Пакет Visual Studio SDK создан для расширения Visual Studio подобным образом. Пакет Visual Studio SDK содержит средства и сведения, которые обеспечивают интеграцию продуктов в Visual Studio. Пакет Visual Studio SDK представляет собой набор средств и платформу для разработки. Он дает разработчикам возможность более точного и полного контроля над интегрированной средой разработки благодаря доступу к большему числу интерфейсов. Использование пакета Visual Studio SDK позволяет расширить количество функций, доступных пользователям расширений. Дополнительные сведения см. на веб-узле MSDN в Visual Studio Extensibility Developer Center. С этого веб-сайта также можно загрузить последний выпуск пакета Visual Studio SDK.

См. также

Задачи

Выбор подходящего подхода к автоматизации

Практическое руководство. Создание надстройки

Пошаговое руководство. Создание мастера

Основные понятия

Диаграмма модели объектов автоматизации

Другие ресурсы

Создание надстроек и мастеров