Конфигурация проекта для сборки

Список конфигураций решений для данного решения управляется диалоговым окном "Конфигурации решений".

Пользователь может создавать дополнительные конфигурации решения, каждый из которых имеет собственное уникальное имя. Когда пользователь создает новую конфигурацию решения, интегрированная среда разработки по умолчанию использует соответствующее имя конфигурации в проектах или отладку, если соответствующее имя отсутствует. При необходимости пользователь может изменить выбор в соответствии с конкретными требованиями. Единственным исключением из этого поведения является то, что проект поддерживает конфигурацию, соответствующую имени новой конфигурации решения. Например, предположим, что решение содержит Project1 и Project2. Project1 имеет конфигурации проектов Debug, Retail и MyConfig1. Project2 имеет конфигурации проектов Debug, Retail и MyConfig2.

Если пользователь создает новую конфигурацию решения с именем MyConfig2, Project1 привязывает конфигурацию отладки к конфигурации решения по умолчанию. Project2 также привязывает конфигурацию MyConfig2 к конфигурации решения по умолчанию.

Примечание.

Привязка не учитывает регистр.

Когда пользователь выбирает элемент выбора нескольких элементов в раскрывающемся списке конфигурации, среда отображает диалоговое окно с списком доступных конфигураций.

Multiple Configurations Несколько конфигураций

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

Сведения о добавлении и переименовании конфигураций для решений и проектов см. в разделе "Конфигурация решения".

Зависимости проекта и порядок сборки являются независимыми от конфигурации решения: то есть можно настроить только одно дерево зависимостей для всех проектов в решении. Щелкните правой кнопкой мыши решение или проект и выберите параметр "Зависимости проекта" или "Порядок сборки проекта" открывает диалоговое окно "Зависимости проекта". Его также можно открыть в меню "Проект ".

Project Dependencies Зависимости проекта

Зависимости проекта определяют порядок сборки проектов. Перейдите на вкладку "Порядок сборки" в диалоговом окне, чтобы просмотреть точный порядок построения проектов в решении и использовать вкладку "Зависимости" для изменения порядка сборки.

Примечание.

Проекты в списке с выбранными проверка полями, но отображаются неактивными, были добавлены средой из-за явных зависимостей, указанных IVsBuildDependency интерфейсами или IVsDeployDependency интерфейсами, и не могут быть изменены. Например, добавление ссылки на проект из проекта Visual Basic в другой проект автоматически добавляет зависимость сборки, которая может быть удалена только путем удаления ссылки. Проекты, проверка прямоугольник которых неактивны и отображаются неактивными, не могут быть выбраны, так как это приведет к созданию цикла зависимостей (например, Project1 будет зависеть от Project2, и Project2 будет зависеть от Project1), что приведет к остановке сборки.

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

  • IVsProjectCfg2 объекты возвращают соответствующие IVsBuildableProjectCfg (возвращенные из get_CfgType) для управления процессами сборки. Чтобы сообщить о состоянии операции сборки во время ее возникновения, конфигурации вызывают IVsBuildStatusCallbackинтерфейс, реализованный средой и любым другим объектом, заинтересованным в событиях состояния сборки.

После создания параметры конфигурации можно использовать для определения того, можно ли запускать их под контролем отладчика. Конфигурации реализуются IVsDebuggableProjectCfg для поддержки отладки.

После реализации зависимостей проекта можно программно управлять зависимостями с помощью модели автоматизации. Вы вызываете BuildDependencies модель автоматизации. Нет доступных интерфейсов НА уровне API VSIP, позволяющих напрямую манипулировать конфигурациями диспетчера сборки решений и их свойствами.

Кроме того, можно указать сетку в окне зависимостей проекта. Дополнительные сведения см. в разделе "Свойства отображения сетки".

См. также