Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В интегрированной среде разработки Visual Studio можно просмотреть и изменить свойства, необходимые для компиляции и сборки проекта. Эти сведения включают имя приложения, расширение (например, DLL, LIB, EXE), параметры компилятора, параметры компоновщика, параметры отладчика и пользовательские шаги сборки.
Эти свойства можно просматривать и изменять с помощью страниц свойств. Чтобы получить доступ к страницам свойств, выберите >"Свойства проекта" в главном меню или щелкните правой кнопкой мыши узел проекта в Обозреватель решений и выберите "Свойства".
Свойства по умолчанию
При создании проекта система задает значения для различных свойств. Значения по умолчанию варьируются в зависимости от типа проекта и параметров, выбранных в мастере приложений. Например, проект активной библиотеки шаблонов (ATL) имеет свойства, связанные с файлами языка определения интерфейса Майкрософт (MIDL), но эти свойства отсутствуют в базовом консольном приложении. Свойства по умолчанию отображаются в области "Дополнительно" в окне "Страницы свойств ":
Применение свойств к конфигурациям сборки и целевым платформам
Некоторые свойства, такие как имя приложения, применяются ко всем вариантам сборки и целевым платформам, будь то отладка или сборка выпуска. Однако большинство свойств зависит от конфигурации. Чтобы создать правильный код, компилятор должен знать как определенную платформу, на которой выполняется программа, так и какие конкретные параметры компилятора следует использовать. Поэтому при установке свойства важно обратить внимание на конфигурацию и платформу, к которой должно применяться новое значение. Должно ли это применяться только к отладочным сборкам Win32 или также к отладочным сборкам ARM64 и x64? Например, свойство Оптимизации по умолчанию имеет значение Наибольшая скорость (/O2) в конфигурации выпуска, но отключено в конфигурации отладки.
Вы всегда можете просмотреть и изменить конфигурацию и платформу, к которым следует применять значение свойства. На следующем рисунке показаны страницы свойств с элементами управления конфигурацией и сведениями о платформе в верхней части экрана. Если свойство оптимизации задано здесь, оно применяется только к сборкам Debug Win32, текущей активной конфигурации, как показано с помощью красных стрелок.
Страница открыта для C/C++, оптимизации. Параметр оптимизации имеет значение Disabled (/Od), который вызывается. Стрелка вызывает связь между параметром конфигурации на странице свойств проекта, которая имеет значение Active(Debug) и параметр в раскрывающемся списке конфигурации решения, который имеет значение Debug. Другая стрелка вызывает связь между параметром платформы на странице свойств проекта, которая имеет значение Active(Win32) и параметром в раскрывающемся списке платформы решений на панели инструментов, которое имеет значение x86.
На следующем рисунке показана та же страница свойств проекта, но конфигурация изменена на Релиз. Обратите внимание на другое значение для свойства "Оптимизация". Кроме того, обратите внимание, что активной конфигурацией по-прежнему является отладка. Здесь вы можете задать свойства для любой конфигурации, а не только активной.
Целевые платформы
Целевая платформа относится к типу устройства и операционной системы, на которой выполняется исполняемый файл. Вы можете создать проект для нескольких платформ. Доступные целевые платформы для проектов C++ зависят от типа проекта. Они включают в себя, но не ограничиваются Win32, x64, ARM, ARM64, Android и iOS. Целевая платформа X86, которую вы могли заметить в Configuration Manager, идентична Win32 в собственных проектах C++. Win32 означает 32-разрядную версию Windows, а x64 — 64-разрядную. Дополнительные сведения об этих двух платформах см. в разделе Запуск 32-разрядных приложений.
Значение любой целевой платформы ЦП , которое может отображаться в Configuration Manager , не влияет на собственные проекты C++. Он относится только к C++/CLI и другим типам проектов .NET. Дополнительные сведения см. в разделе /CLRIMAGETYPE
(Указание типа образа СРЕДЫ CLR).
Дополнительные сведения настройке свойств отладочной сборки см. в следующих разделах:
- Параметры проекта для конфигурации отладки C++
- Параметры отладчика и подготовка
- Подготовка к отладке: типы проектов Visual C++
- Указание файлов символов (PDB) и файлов с исходным кодом в отладчике Visual Studio
Параметры компилятора и компоновщика C++
Параметры компилятора и компоновщика C++ находятся в узлах C/C++ и Компоновщик на панели слева в разделе Свойства конфигурации. Эти параметры преобразуются непосредственно в параметры командной строки, передаваемые компилятору. Чтобы ознакомиться с документацией по конкретному параметру, выберите параметр в центральной области и нажмите клавишу F1. Кроме того, можно просмотреть документацию по всем параметрам компилятора MSVC и параметрам компоновщика MSVC.
В диалоговом окне Страницы свойств отображаются только страницы свойств, относящиеся к текущему проекту. Например, если у проекта нет .idl
файла, страница свойств MIDL не отображается. Дополнительные сведения о параметрах на каждой странице свойств см. в разделе "Страницы свойств" (C++).
Значения каталога и пути
MSBuild поддерживает использование констант времени компиляции для определённых строковых значений, таких как каталоги и пути, называемые макросами. Макрос может ссылаться на значение, определенное в Visual Studio или системе MSBuild, или на определяемое пользователем значение. Макросы выглядят как $(macro-name)
или %(item-macro-name)
. Они представлены на страницах свойств, где можно ссылаться на них и изменять их с помощью редактора свойств. Используйте макросы вместо жестко закодированных значений, таких как пути к каталогу. Макросы упрощают совместное использование параметров свойств между компьютерами и между версиями Visual Studio. Кроме того, вы можете лучше убедиться, что параметры проекта правильно участвуют в наследовании свойств.
На следующем рисунке показаны страницы свойств для проекта Visual Studio C++. В области слева выбрано правилоКаталоги VC++, а в области справа отображаются свойства, связанные с этим правилом. Значения свойств часто являются макросами, такими как $(VC_SourcePath)
:
Страница VC++ Каталоги открыта, и она содержит свойства для правил каталогов VC++. Примером правила является каталоги source, для которых задано значение $(VC_SourcePath). Существуют правила включения каталогов, каталогов библиотек, исполняемых каталогов и т. д.
Редактор свойств можно использовать для просмотра значений всех доступных макросов.
Предустановленные макросы
Глобальные макросы
Глобальные макросы применяются ко всем элементам в конфигурации проекта. Глобальный макрос имеет синтаксис$(name)
. Пример глобального макроса — свойство$(VCInstallDir)
, которое сохраняет корневой каталог установки Visual Studio. Глобальный макрос соответствует элементуPropertyGroup
в MSBuild.Макросы элементов
Макросы элементов имеют синтаксис%(name)
. Для файла макрос, относящийся к элементу, применяется только к данному файлу. Например, можно указать%(AdditionalIncludeDirectories)
включаемые каталоги, которые применяются только к конкретному файлу. Этот тип макроса элемента соответствует метаданнымItemGroup
в MSBuild. При использовании в контексте конфигурации проекта макрос элемента применяется ко всем файлам определенного типа. Например, свойство конфигурации C/C++ Определения препроцессора может принимать макрос элемента%(PreprocessorDefinitions)
, который применяется ко всем CPP-файлам в проекте. Этот тип макроса элемента соответствует метаданнымItemDefinitionGroup
в MSBuild. Дополнительные сведения см. в разделе "Определения элементов".
Пользовательские макросы
Вы можете создавать пользовательские макросы для использования в качестве переменных в сборках проекта. Например, можно создать пользовательский макрос, предоставляющий значение пользовательскому шагу сборки или пользовательскому средству сборки. Определяемый пользователем макрос — это пара "имя-значение". Для доступа к этому значению в файле проекта используется нотация $(name)
.
Пользовательский макрос хранится на странице свойств. Если проект еще не содержит лист свойств, его можно создать, выполнив действия, описанные в разделе "Общий доступ" или повторное использование параметров проекта Visual Studio.
Создание пользовательского макроса
Откройте окно Диспетчер свойств. В строке меню выберите Вид>Другие окна>Диспетчер свойств. Откройте контекстное меню для листа свойств (имя заканчивается на
.user
) и выберите Свойства. Откроется диалоговое окно Страницы свойств для данной страницы свойств.В левой области диалогового окна выберите Пользовательские макросы. В правой области нажмите кнопку Добавить макрос, чтобы открыть диалоговое окно Добавление пользовательского макроса.
В диалоговом окне задайте имя и значение для макроса. Кроме того, можно установить флажок Задание данного макроса в качестве переменной среды в среде сборки.
Редактор свойств
Редактор свойств можно использовать для изменения некоторых строковых свойств и выбора макросов в качестве значений. Чтобы открыть редактор свойств, выберите свойство на странице свойств, а затем нажмите кнопку со стрелкой вниз справа. Если раскрывающийся список содержит <правку>, его можно выбрать для отображения редактора свойств для этого свойства.
Откроется редактор свойств для параметра "Включить каталоги". В нем отображается вычисляемое значение для каталогов include, которое является C:\Program Files(x86)\Microsoft Visual Studio 14.0\VC\Include. В нем показаны два унаследованных значения: $(VC_IncludePath) и $(WindowsSDK_IncludePath). Установлен флажок "Наследовать от родительского или проекта по умолчанию".
В редакторе свойств можно нажать кнопку Макросы, чтобы просмотреть доступные макросы и их текущие значения. На следующем рисунке показан редактор свойств для свойства Дополнительные каталоги включаемых файлов после нажатия кнопки Макросы. Если установлен флажок "Наследовать от значений родителя или значения проекта по умолчанию" и добавляется новое значение, это значение добавляется к любым значениям, которые в настоящее время наследуются. Если снять флажок, новое значение заменяет наследуемые значения. В большинстве случаев оставьте этот флажок отмеченным.
Открыт редактор свойств для каталогов Include. Вычисляемое значение отображается вместе с унаследованными значениями. Список содержит различные макросы и их значения, такие как $(CharacterSet), для которого задано значение Юникод.
Добавление каталога включения к набору каталогов по умолчанию
При добавлении каталога включения в проект важно не переопределить все каталоги по умолчанию. Правильным способом добавления каталога является добавление нового пути, например C:\MyNewIncludeDir\
, а затем добавление $(IncludePath)
макроса в значение свойства.
Быстрый просмотр и поиск всех свойств
Страница свойств "Все параметры" (в узле "Свойства>конфигурации C/C++" в диалоговом окне "Страницы свойств") предоставляет быстрый способ просмотра и поиска свойств, доступных в текущем контексте. Она имеет специальное поле поиска и простой синтаксис, который помогает отфильтровать результаты.
Нет префикса: поиск только в именах свойств (подстрока без учета регистра).
'
/
' или '-
': поиск только в переключателях компилятора (префикс, нечувствительный к регистру).v
: поиск только в значениях (подстрока без учета регистра).
Задание переменных среды для сборки
Компилятор MSVC (cl.exe) распознает определенные переменные среды, в частности LIB
, LIBPATH
PATH
и INCLUDE
. При сборке с помощью интегрированной среды разработки свойства, заданные на странице свойств каталогов VC++, используются для задания этих переменных среды. Если значения LIB
, LIBPATH
, и INCLUDE
уже заданы, например с помощью командной строки разработчика, они заменяются значениями соответствующих свойств MSBuild. Затем сборка добавляет значение свойства PATH
исполняемых каталогов VC++ в . Для задания пользовательской переменной среды можно создать пользовательский макрос и затем установить флажок Задание данного макроса в качестве переменной среды в среде сборки.
Установка переменных среды для сеанса отладки
В левой области диалогового окна Страницы свойств проекта разверните узел Свойства конфигурации и выберите пункт Отладка.
В правой области измените параметры проекта Среда или Объединение среды, а затем нажмите кнопку ОК.
Статьи в этом разделе
- Совместное или повторное использование параметров проекта Visual Studio
- Наследование свойств в проектах Visual Studio
- Изменение свойств и целевых объектов проекта C++ без изменения файла проекта