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


Практическое руководство. Добавление ссылок на пространства имен автоматизации

При добавлении ссылки на EnvDTE, EnvDTE80, EnvDTE90 или EnvDTE100 можно выбрать использование версии библиотеки .NET или COM.Выбор должен зависеть от проекта.

Если используется старое приложение или надстройка, возможно, потребуется использовать версию COM EnvDTE, EnvDTE80, EnvDTE90 или EnvDTE100.Однако при создании нового управляемого приложения или надстройки, скорее всего, возникнет желание использовать версию сборки .NET.

При использовании диалогового окна Мастер надстроек в процессе создания надстройки на любом языке программирования или создании макроса добавляются ссылки на сборки EnvDTE, EnvDTE90, Env90 и Env100, и в файле, содержащем класс Connect, добавляются директивы using (в Visual Basic, imports) в пространства имен EnvDTE и EnvDTE80.

При этом, если требуется получить доступ к объектам автоматизации не из макроса или надстроек, созданных с помощью средства Мастер надстроек, необходимо вручную добавить ссылки на сборки и директивы using (в Visual Basic imports).В случае добавления ссылки на сборку вручную, свойству Внедрить типы взаимодействия сборки необходимо присвоить значение false.Для этого выполните указанные ниже действия.

  1. Добавьте ссылку на сборку.В окне Обозреватель решений щелкните правой кнопкой мыши проект и выберите команду Добавить ссылку.На вкладке .NET выберите сборку, после чего нажмите кнопку ОК.В проекте C# имя сборки будет отображаться в окне Обозреватель решений в узле Ссылки.В проекте Visual Basic имя сборки будет отображаться в свойствах проекта.В окне Обозреватель решений щелкните правой кнопкой мыши проект и выберите пункт Свойства.Свойства отображаются на странице свойств.В левой области выберите страницу Ссылки.

  2. Выберите ссылку на сборку и в окне Свойства присвойте свойству Внедрить типы взаимодействия сборки значение false.

После того как ссылки на пространства имен добавлены, может возникнуть желание выполнить программирование с объектами DTE и DTE2.Дополнительные сведения см. в разделе Практическое руководство. Получение ссылок на объекты DTE и DTE2.

ПримечаниеПримечание

Отображаемые диалоговые окна и команды меню могут отличаться от описанных в справке в зависимости от текущих настроек или выпуска.Эти процедуры были разработаны с обычными параметрами разработки.Чтобы изменить настройки, в меню Сервис выберите команду Импорт и экспортпараметров.Дополнительные сведения см. в разделе Параметры Visual Studio.

Добавление ссылок на пространства имен EnvDTE в Visual Basic или Visual C# вручную

  1. В обозревателе решений щелкните правой кнопкой мыши проект или узел “Ссылки” и выберите команду Добавить ссылку или в меню Проект выберите команду Добавить ссылку.

  2. В диалоговом окне Добавление ссылки выберите вкладку, соответствующую нужному типу компонента, например .NET или COM.

  3. Прокрутите список вниз и выберите EnvDTE, EnvDTE80, EnvDTE90 и EnvDTE100.

  4. Нажмите кнопку ОК, чтобы добавить две новые ссылки к проекту.

  5. Чтобы для новых сборок в редакторе кода включить возможности Intellisense, в начало модуля или класса проекта добавьте следующие строки:

    Imports EnvDTE
    Imports EnvDTE80
    Imports EnvDTE90
    Imports EnvDTE100
    
    using EnvDTE;
    using EnvDTE80;
    using EnvDTE90;
    using EnvDTE100;
    

Добавление ссылок на пространства имен EnvDTE в управляемом языке Visual C++ вручную

  1. В обозревателе решений щелкните правой кнопкой мыши узел проекта и выберите команду Добавить ссылки или в меню Проект выберите команду Добавить ссылки.

  2. Щелкните Добавить новую ссылку, после чего перейдите на вкладку .NET.

  3. Прокрутите список вниз и выберите EnvDTE, EnvDTE80 и EnvDTE90, а затем щелкните Добавить.

  4. Нажмите кнопку ОК, чтобы добавить новые ссылки к проекту.

  5. Чтобы для новых сборок в редакторе кода включить возможности Intellisense, в начало главного файла проекта добавьте следующие строки:

    // Visual C++
    #using <envdte.dll>
    #using <envdte80.dll>
    #using <envdte90.dll>
    #using <envdte100.dll>
    

Добавление ссылок на пространства имен EnvDTE и EnvDTE80 в неуправляемом языке (ATL) Visual C++

  • В подходящий файл заголовка или исходного кода добавьте следующие строки.

    #pragma warning( disable : 4278 )
    #pragma warning( disable : 4146 )
    //The following #import imports EnvDTE based on its LIBID.
    #import "libid:80cc9f66-e7d8-4ddd-85b6-d9e6cd0e93e2" version("8.0") 
    lcid("0") raw_interfaces_only named_guids
    //The following #import imports EnvDTE80 based on its LIBID.
    #import "libid:1A31287A-4D7D-413e-8E32-3B374931BD89" version("8.0") 
    lcid("0") raw_interfaces_only named_guids
    //The following #import imports EnvDTE90 based on its LIBID.
    #import "libid: 2ce2370e-d744-4936-a090-3fffe667b0e1" version("9.0") 
    lcid("0") raw_interfaces_only named_guids
    //The following #import imports EnvDTE100 based on its LIBID.
    #import "libid: 26ad1324-4b7c-44bc-84f8-b86aed45729f" version("10.0") 
    lcid("0") raw_interfaces_only named_guids
    #pragma warning( default : 4146 )
    #pragma warning( default : 4278 )
    

См. также

Задачи

Практическое руководство. Управление надстройками с помощью диспетчера надстроек

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

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

Регистрация надстройки

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

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

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