Разработка подключаемых модулей / надстроек Visual Studio 2008 - Начало работы

StackOverflow https://stackoverflow.com/questions/855808

Вопрос

эй, ребята, по отношению к этот вопрос stackoverflow, как бы я приступил к созданию своего собственного подключаемого модуля Visual Studio 2008.

Я проверил Центр разработчиков Visual Studio на MSDN, но объем информации ошеломляет.Существует множество типов проектов, и я даже не знаю, с чего начать.

С чего мне начать поиски если я хочу написать что-то, что соответствует следующим требованиям:

  1. Подключаемый модуль, который работает как "сервис" в Visual Studio и способен запрашивать информацию в Visual Studio и обрабатывать события Visual Studio.
  2. Информация, к которой я хотел бы получить доступ из VS, - это такие вещи, как, какие проекты в данный момент открыты, у кого они открыты, и другая информация о решениях / файлах проекта.
  3. События, которые я хотел бы иметь возможность обрабатывать, - это такие вещи, как открытие / закрытие / редактирование / создание / удаление решений / проектов / отдельных файлов.
  4. Я также хотел бы иметь возможность обрабатывать любое взаимодействие с VS для каждого решения.Итак, я хотел бы обрабатывать любое взаимодействие с файлами, даже редактирование кода, но также и просто другое взаимодействие, например, с меню или просто с самой IDE.

Помимо этого, я бы также хотел иметь возможность где-нибудь хранить данные.Где это обычно делается?Могу ли я добавить метаданные в файл решения?Или имеет смысл сохранить эту информацию в небольшом локальном экземпляре базы данных, который каким-то образом привязан к решению ..?

Мне просто нужен толчок в правильном направлении, возможно ли что-нибудь из этого?На какой части Центра разработки Visual Studio мне следует сосредоточиться?Какие API-интерфейсы я должен проверить?

ваше здоровье!

Это было полезно?

Решение

Большую часть этого может сделать надстройка.В VS2008 есть шаблон для создания базовой надстройки.

У меня есть надстройка, которую вы можете загрузить, которая подключается к событиям загрузки решения / проекта и т.д. - Она бесплатна и поставляется с исходным кодом ( http://www.huagati.com/projectloader/download/huagatiprojectloader.zip ).Эта конкретная надстройка определяет, когда загружаются проекты / решения, и предварительно загружает сборки, на которые даны ссылки, для устранения ошибки CLR, которая может привести к сбою VS2008.В любом случае, исходный код для него показывает, как обнаружить некоторые из событий, которые вы ищете.

Помимо этого, основным ресурсом по разработке надстроек и всем связанным с ними мелким хитростям является блог Карлоса Кинтеро ( http://msmvps.com/blogs/carlosq/ ) и серию статей "howto" на его веб-сайте ( http://www.mztools.com/resources_vsnet_addins.aspx ).

Блог Крейга Скибо ( http://blogs.msdn.com/craigskibo/ ) также содержит несколько полезных советов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top