Руководство по разработке модулей расширений на C для Visual Studio 2. Atmel Studio Блог компании PVS Studio Хабрахабр. Аннотация. Около года назад мы опубликовали в блоге цикл статей о разработке плагинов для Visual Studio на языке C. Сейчас мы переработали эти материалы, добавили новые разделы и предлагаем вашему вниманию новый вариант руководства. Создание модулей расширения или плагинов для среды разработки Microsoft Visual Studio поначалу может показаться очень простым. Ведь есть прекрасная документация в MSDN, статьи, примеры и много дополнительных материалов. Но может показаться и сложным, когда некоторые действия будут давать не тот результат, который ожидается. И хотя такое поведение нередко оказывается характерно для любой программистской задачи, все таки тема разработки плагинов не полностью раскрыта. Мы занимаемся разработкой статического анализатора кода PVS Studio. И хотя сам инструмент предназначен для программистов на C, немалая его часть написана на C. Когда мы начинали разрабатывать наш плагин, в мире Visual Studio самой новой и современной считалась версия Visual Studio 2. И хотя сейчас, когда уже вышла Visual Studio 2. Visual Studio 2. 00. Знак Соответствия При Добровольной Сертификации. За то время что мы поддерживали разные версии Visual Studio и использовали разные возможности среды, у нас накопилось большое количество практических знаний о том, как же правильно а особенно неправильно создавать плагины. Держать в себе эти знания больше не было никаких сил. Поэтому мы решили оформить их и опубликовать. Ведь некоторые решения, которые сейчас кажутся очевидными, были найдены только несколько лет спустя. А те, проблемы, которые уже давно решены, до сих пор могут мучать некоторых разработчиков плагинов. Будут рассмотрены следующие вопросы базовая информация по созданию и отладке MSVS плагинов, а также поддержка данных проектов расширения в единой кодовой базе для нескольких версий Visual Studio обзор объектной модели автоматизации и классов MPF Managed Package Framework расширения интерфейса среды разработки с использованием API объектной модели автоматизации Env. DTE и классов MPF Managed Package Framework пользовательскими меню, панелями инструментов, инструментальными окнами и диалогами настроек обзор проектной модели Visual Studio, взаимодействие с пользовательскими проектными моделями на примере реализованной в виде Visual Studio Isolated Shell среды Atmel Studioсбор всех необходимых данных, таких как параметры и настройки компиляции разных конфигураций и платформ, с помощью проектной модели Visual C для работы с внешним препроцессоромкомпилятором Более детальное и полное описание затронутых в статье тем доступно по приведнным в конце каждого раздела ссылкам на официальные материалы библиотеки MSDN и другие сторонние ресурсы. Visual C 6 Руководство' title='Visual C 6 Руководство' />Рассматриваться будет только разработка подключаемых модулей для Visual Studio 2. Это ограничение обусловлено тем, что PVS Studio поддерживает только системы с VS2. Такое ограничение при разработке PVS Studio вызвано появлением в среде Visual Studio 2. API, которая не совместима с предыдущими версиями API расширения среды. Создание, отладка и развертывание пакетов расширения сред Microsoft Visual Studio 2. В данном разделе будет произведн обзор различных методов расширения функциональности среды Visual Studio. Подробно будет рассмотрено создание модулей расширения вида Visual Studio Extension Package пакет расширения Visual Studio, их отладка, регистрация и развртывание на машине конечного пользователя. Создание и отладка VSPackage модулей расширения Visual Studio и Visual Studio Isolated Shell. Существует множество способов для расширения функционала Microsoft Visual Studio. На самом базовом уровне можно автоматизировать простые рутинные действия с помощью макросов. Для программной автоматизации простых действий с UI объектами среды, манипуляций пунктами в меню и т. Visual C 6 Руководство' title='Visual C 6 Руководство' />Для интеграции в Visual Studio крупных независимых компонентов лучше всего подходят расширения вида Extension Package пакеты расширения, также известные как VSPackage. При этом VSPackage позволяют сочетать в себе автоматизацию управления компонентами IDE через объектную модель автоматизации с расширением среды через MEF Managed Extensibility Framework и Managed Package Framework классы таких, как Package. На самом деле, тогда как сама Visual Studio предоставляет лишь общие интерфейсные компоненты и службы, такие стандартные модули, как например Visual C или Visual C, реализованы как раз в виде расширений среды. Первые версии плагина PVS Studio точнее 1. XX и 2. XX, когда наш продукт еще назывался Viva. Add In. С версии PVS Studio 3. VSPackage. Причина перехода нам стало тесновато в Add In и было неудобно отлаживаться. Кроме того, хотелось иметь свой значок на экранной заставке Visual Studio VSPackage модули позволяют расширять и саму модель автоматизации, предоставляя возможности для добавления в не пользовательских объектов автоматизации. IC818081.jpeg' alt='Visual C 6 Руководство' title='Visual C 6 Руководство' />Вот я Delphiпрограммист, начинаю изучать Visual C. И ищу материал о том, как прикрутить форму к программе, какие заголовочные файлы. Тихомиров Visual C и MFC. Руководство для профессионалов. Серия Мастер. Руководство для профессионалов. Издательство BHV. Лучший ресурс по компилятору MSVC и вообще по Visual Studio это MSDN, потому что Microsoft производитель этих продуктов. Такой дистрибутив не будет содержать проприетарных языковых компонентов Microsoft Visual Basic, Visual C и т. В пошаговых руководствах содержатся инструкции по выполнению типовых сценариев, что делает их удобным инструментом для начала изучения. Такие объекты становятся доступны через модель автоматизации для других модулей расширений, предоставляя им программный доступ к сторонним интегрированным пользовательским компонентам. Это, в частности, позволяет сторонним разработчикам добавлять в среду через расширения поддержку новых языков программирования и компиляторов, а также предоставлять интерфейсы для автоматизации уже этих новых компонентов. Помимо расширения непосредственно самой среды Visual Studio, VSPackage модули можно использовать и для добавления функционала в изолированныеинтегрированные оболочки Visual Studio Visual Studio IsolatedIntegrated Shell. Изолированнаяинтегрированная оболочка Visual Studio позволяет любому стороннему разработчику пере использовать стандартные интерфейсные компоненты и службы Visual Studio редактор кода, система автодополнения и т. Такой дистрибутив не будет содержать проприетарных языковых компонентов Microsoft Visual Basic, Visual C и т. Visual Studio IDE. Изолированная оболочка Visual Studio будет оставаться обособленной после установки даже на системе с предустановленной Visual Studio, а интегрированная оболочка будет объединена с предустановленной средой. В случае если разработчик изолированнойинтегрированной оболочки расширит модель автоматизации Visual Studio, добавив в не интерфейсы для своих специфических компонентов, разработчик VSPackage плагина будет иметь доступ и к этим интерфейсам. В качестве примера Visual Studio Isolated Shell можно привести среду для создания embedded систем Atmel Studio. Visual C 6 Руководство' title='Visual C 6 Руководство' />Atmel Studio использует собственную проектную модель, являющуюся реализацией стандартной проектной модели Visual Studio для MSBuild, и вариант компилятора gcc. Проекты подключаемых модулей VSPackage, cоздание пакета расширения. Компилятор C в Visual Studio обладает большим количеством возможностей чем C компилятор в Unity. Это означает, что код содержащий новейшие. Скачать книгу Самоучитель Visual C 6 в примерах. Книга является неформальным руководством по технологии программирования. Visual C 6 Руководство' title='Visual C 6 Руководство' />Рассмотрим создание подключаемого модуля вида Visual Studio Package VSPackage, пакет расширения. В отличие от подключаемых модулей Add In, разработка пакета расширения среды потребует установки Microsoft Visual Studio SDK для целевой версии среды разработки. То есть для разработки пакета расширения под каждую версию Visual Studio потребует установки отдельного SDK. При создании пакета расширения для Visual Studio IsolatedIntegrated Shell потребуется SDK для той версии Visual Studio, на которой данная оболочка основана. В дальнейшем мы будем рассматривать разработку расширений для версий среды 2. Visual Studio 2. 01. Isolated Shell на примере Atmel Studio. Установка Visual Studio SDK добавляет в стандартные шаблоны среды проект типа Visual Studio Package пункт Other Project Types Extensibility. CC C с нуля 7 августа 2011 1315 комментариев. Руководство разработчика. Часть 1 Краткий обзор Visual C. Компилятор Visual C, версия 6.