Общие свойства проектов MSBuild
Обновлен: Ноябрь 2007
Все проекты Visual Studio независимо от их типа имеют определенные общие свойства MSBuild. Кроме того, некоторые другие свойства используются очень часто. Ниже приведен список всех общих и часто используемых свойств.
Список общих свойств и параметров
Имя свойства или параметра |
Описание |
---|---|
AdditionalLibPaths |
Задает дополнительные папки, в которых компиляторы должны искать сборки ссылок. |
AddModules |
Все сведения из указанных файлов становятся доступны для компилируемого проекта. Это свойство равнозначно переключателю компилятора /addModules. |
ALToolPath |
Путь к файлу AL.exe. Это свойство переопределяет текущую версию AL.exe для использования другой версии. |
ApplicationIcon |
Файл значка .ico, передаваемый в компилятор для внедрения в качестве значка Win32. Это свойство равнозначно переключателю компилятора /win32icon. |
ApplicationManifest |
Указание пути к файлу, используемому для создания внешних данных манифеста по контролю учетных записей (UAC). Это свойство применяется к проектам Visual Studio, предназначенным для Windows Vista. В большинстве случаев манифест является внедренным. Однако при использовании COM-компонентов без регистрации или развертывания ClickOnce манифест может быть внешним файлом, устанавливаемым вместе со сборками приложений. Дополнительные сведения содержатся в описании свойства NoWin32Manifest в данном разделе. |
AssemblySearchPaths |
Список расположений для поиска во время разрешения построения сборок ссылок. Порядок следования путей в списке важен, так как пути в начале списка имеют более высокий приоритет, чем последующие пути. |
AssemblyName |
Имя окончательной выходной сборки после построения проекта. |
BaseAddress |
Указание базового адреса главной выходной сборки. Это свойство равнозначно переключателю компилятора /baseaddress. |
BaseOutputPath |
Задает базовый путь для выходного файла. Если это свойство задано, MSBuild будет использовать OutputPath = $(BaseOutputPath)\$(Configuration)\. Пример синтаксиса: <BaseOutputPath>c:\xyz\bin\</BaseOutputPath> |
BaseIntermediateOutputPath |
Задает базовый промежуточный путь для выходного файла. Пример синтаксиса: <BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath> |
BuildInParallel |
Логическое значение, указывающее, выполняется ли построение или удаление ссылок параллельно при использовании MSBuild в мультипроцессорном режиме. По умолчанию используется значение true, которое означает, что построение проектов будет выполняться параллельно, если система имеет несколько ядер или процессоров. |
BuildProjectReferences |
Логическое значение, указывающее, выполняется ли построение ссылок с помощью MSBuild. Задайте значение false, если построение проекта ведется в изолированной среде разработки (IDE) Visual Studio,в противном случае задайте значение true. |
BaseIntermediateOutputPath |
Папка верхнего уровня, в которой создаются все промежуточные папки назначения, связанные с конфигурацией. По умолчанию используется значение "obj\". |
CleanFile |
Имя файла, который будет использоваться в качестве "средства очистки кэша". Средство очистки кэша — это список созданных файлов, которые необходимо удалить во время выполнения операции очистки. Файл перемещается в промежуточную папку назначения процессом построения. Это свойство указывает только имена файлов, для которых отсутствует информация о пути. |
CodePage |
Задает кодовую страницу, которая должна использоваться для всех файлов исходного кода при компиляции. Это свойство равнозначно переключателю компилятора /codepage. |
CompilerResponseFile |
Необязательный файл ответа, который можно передать в задачи компилятора. |
Configuration |
Конфигурация, для которой выполняется построение: "Отладка" или "Выпуск". |
CscToolPath |
Путь к файлу csc.exe, компилятору Visual C#. |
CustomBeforeMicrosoftCommonTargets |
Имя файла проекта или целевых объектов, который должен быть импортирован автоматически перед импортом стандартных целевых объектов. |
DebugSymbols |
Логическое значение, указывающее, создаются ли построением символы. Если в командной строке присвоено значение /p:DebugSymbols=false, создание символьных файлов базы данных (.pdb) отключается. |
DefineConstants |
Определение констант условной компиляции. Пары символов/значений разделяются точками с запятой и задаются с помощью приведенного ниже синтаксиса: символ1 = значение1 ; символ2 = значение2 Это свойство равнозначно переключателю компилятора /define. |
DefineDebug |
Логическое значение, указывающее, требуется ли задавать константу DEBUG. |
DefineTrace |
Логическое значение, указывающее, требуется ли задавать константу TRACE. |
DebugType |
Задает уровень создаваемой отладочной информации. Допустимые значения: "full", "pdbonly" и "none". |
DelaySign |
Логическое значение, указывающее, требуется ли отложить подпись сборки или полностью подписать сборку. |
DisabledWarnings |
Отключение указанных предупреждений. Необходимо указать только числовую часть идентификатора предупреждения. Несколько предупреждений отделяются друг от друга точкой с запятой. Этот параметр соответствует переключателю /nowarn компилятора vbc.exe. |
DisableFastUpToDateCheck |
Логическое значение, применимое только к Visual Studio. Диспетчер построений Visual Studio использует процесс FastUpToDateCheck, чтобы определить, требуется ли перестраивание проекта для сохранения его актуальности. Этот процесс позволяет получить результат быстрее, чем MSBuild. Присвоение свойству DisableFastUpToDateCheck значения true позволяет обойти диспетчер построений Visual Studio принудить его использовать MSBuild для определения актуальности проекта. |
DocumentationFile |
Имя файла, создаваемого как файл XML-документации. Это имя включает только имя файла и не содержит информации о пути. |
ErrorReport |
Указание того, как задача компилятора должна указывать внутренние ошибки компилятора. Допустимые значения: "prompt", "send" и "none". Это свойство равнозначно переключателю компилятора /errorreport. |
ExcludeDeploymentUrl |
Свойство Задача GenerateDeploymentManifest добавляет в манифест развертывания тег deploymentProvider, если файл проекта включает любой из следующих элементов:
С помощью ExcludeDeploymentUrl можно предотвратить добавление тега deploymentProvider в манифест развертывания, даже если указан любой из приведенных выше URL-адресов. Для этого добавьте в файл проекта следующее свойство: <ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>
Примечание.
ExcludeDeploymentUrl не предоставляется в IDE Visual Studio и может быть задан только с помощью ручного редактирования файла проекта. Установка данного свойства не влияет на публикацию в Visual Studio; поэтому тег deploymentProvider все равно будет добавлен URL-адрес, указанный с помощью PublishUrl.
|
FileAlignment |
Определение (в байтах), где выровнять разделы выходного файла. Допустимые значения: 512, 1024, 2048, 4096, 8192. Это свойство эквивалентно переключателю компилятора /filealignment. |
FrameworkPathOverride |
Указание расположения библиотек mscorlib.dll и microsoft.visualbasic.dll. Этот параметр соответствует переключателю /sdkpath компилятора vbc.exe. |
GenerateDocumentation |
Логический параметр, указывающий, создается ли построением документация. Если присвоено значение true, сборка создает сведения о документации и помещает их в XML-файл вместе с именем выполняемого файла или библиотеки, созданных задачей построения. |
IntermediateOutputPath |
Полный промежуточный выходной путь, производный от BaseIntermediateOutputPath, если путь не указан. Например, \obj\debug\. Если данное свойство переопределено, то настройка BaseIntermediateOutputPath не оказывает никакого влияния. |
KeyContainerName |
Имя контейнера ключа строгого имени. |
KeyOriginatorFile |
Имя файла ключа строгого имени. |
NoWin32Manifest |
Определение того, создает ли компилятор манифест Win32 по умолчанию в выходной сборке. По умолчанию используется значение false, обозначающее, что манифест Win32 по умолчанию создается для всех приложений. Это свойство соответствует переключателю /nowin32manifest компилятора vbc.exe. |
ModuleAssemblyName |
Имя сборки, в которую должен быть включен скомпилированный модуль. Это свойство равнозначно переключателю компилятора /moduleassemblyname. |
NoLogo |
Логическое значение, указывающее, требуется ли отключить эмблему компилятора. Это свойство равнозначно переключателю компилятора /nologo. |
NoStdLib |
Логическое значение, указывающее, следует ли избегать ссылок на стандартную библиотеку (mscorlib.dll). По умолчанию используется значение false. |
NoVBRuntimeReference |
Логическое значение, указывающее, необходимо ли включить в проект в качестве ссылки среду выполнения Visual Basic (Microsoft.VisualBasic.dll). |
NoWin32Manifest |
Логическое значение, указывающее, внедряется ли информация о манифесте по контролю учетных записей (UAC) в выполняемый файл приложения. Это свойство применяется к проектам Visual Studio, предназначенным для Windows Vista. В проектах, развернутых с помощью ClickOnce и COM-компонентов без регистрации, данный элемент игнорируется. Значение False (по умолчанию) указывает, что информация о манифесте по контролю учетных записей (UAC) внедряется в выполняемый файл приложения. Значение True указывает, что информация о манифесте UAC не внедряется. Это свойство применимо только для проектов Visual Studio, предназначенных для Windows Vista. В проектах, развернутых с помощью ClickOnce и COM-компонентов без регистрации, данное свойство игнорируется. NoWin32Manifest необходимо добавить только в том случае, если не требуется, чтобы Visual Studio внедрял какую-либо информацию о манифесте в выполняемый файл приложения; этот процесс называется виртуализацией. Для использования виртуализации задайте <ApplicationManifest> вместе с <NoWin32Manifest>, как показано ниже:
|
Optimize |
Логическое значение, которое при установленном значении true разрешает оптимизацию компилятора. Это свойство равнозначно переключателю компилятора /optimize. |
OptionCompare |
Задает способ сравнения строк. Допустимые значения: "binary" или "text". Это свойство соответствует переключателю /optioncompare компилятора vbc.exe. |
OptionExplicit |
Логическое значение, которое при установленном значении true требует явного объявления переменных в исходном коде. Это свойство равнозначно переключателю компилятора /optionexplicit. |
OptionInfer |
Логическое значение, которое при установленном значении true разрешает определение типа переменных. Это свойство равнозначно переключателю компилятора /optioninfer. |
OptionStrict |
Логическое значение, при установленном значении true задача построения требует строгой семантики для ограничения неявного преобразования типов. Это свойство соответствует переключателю /optionstrict компилятора vbc.exe. |
OutputPath |
Это свойство обычно указывается в файле проекта и имеет много общего с OutDir. OutputPath устарело, поэтому, если возможно, следует использовать OutDir. |
OutputType |
Задает формат выходного файла. Этот параметр может принимать одно из следующих значений:
Это свойство соответствует переключателю /target компилятора vbc.exe. |
OverwriteReadOnlyFiles |
Логическое значение, указывающее, требуется ли разрешить сборке перезапись файлов, доступных только для чтения, или выдавать ошибку. |
PdbFile |
Имя выдаваемого файла .pdb. Это свойство соответствует переключателю /pdb компилятора csc.exe. |
Platform |
Операционная система, для которой выполняется построение. Доступные значения: "AnyCPU", "x86", "x64" или "Itanium". |
RemoveIntegerChecks |
Логическое значение, показывающее, включены ли проверки ошибок переполнения для целых чисел. По умолчанию используется значение false. Это свойство соответствует переключателю /removeintchecks компилятора vbc.exe. |
SGenUseProxyTypes |
Логическое значение, указывающее, создаются ли типы прокси с помощью SGen.exe. |
SGenToolPath |
Дополнительный путь, указывающий расположение SGen.exe при переопределении текущей версии SGen.exe. |
StartupObject |
Указание класса или модуля, содержащего метод Main или процедуру Sub Main. Это свойство равнозначно переключателю компилятора /main. |
ProcessorArchitecture |
Архитектура процессора, используемая после разрешения ссылок на сборки. Доступные значения: "msil", "x86", "amd64" или "ia64". |
RootNamespace |
Корневое пространство имен, используемое при назначении имени внедренному ресурсу. Это пространство имен является частью имени манифеста внедренного ресурса. |
Satellite_AlgorithmId |
Идентификатор алгоритма хэширования AL.exe, используемого при создании вспомогательных сборок. |
Satellite_BaseAddress |
Базовый адрес, используемый при создании вспомогательных сборок, относящихся к конкретному языку и региональным параметрам, с помощью целевого объекта CreateSatelliteAssemblies. |
Satellite_CompanyName |
Имя компании для передачи в AL.exe во время создания вспомогательных сборок. |
Satellite_Configuration |
Имя конфигурации для передачи в AL.exe во время создания вспомогательных сборок. |
Satellite_Description |
Текст описания для передачи в AL.exe во время создания вспомогательных сборок. |
Satellite_EvidenceFile |
Внедрение указанного файла во вспомогательную сборку с именем ресурса "Security.Evidence". |
Satellite_FileVersion |
Задает строковое значение поля "Версия файла" во вспомогательной сборке. |
Satellite_Flags |
Задает значение поля "Флаги" во вспомогательной сборке. |
Satellite_GenerateFullPaths |
Указание того, что в задаче построения должны использоваться абсолютные пути для всех файлов, имена которых присутствуют в сообщении об ошибке. |
Satellite_LinkResource |
Связывание указанных файлов ресурсов со вспомогательной сборкой. |
Satellite_MainEntryPoint |
Задает полное имя (класс.метод) метода, являющееся точкой входа при преобразовании модуля в выполняемый файл во время создания вспомогательной сборки. |
Satellite_ProductName |
Задает строковое значение для поля "Product" во вспомогательной сборке. |
Satellite_ProductVersion |
Задает строковое значение для поля "ProductVersion" во вспомогательной сборке. |
Satellite_TargetType |
Задает формат выходного файла вспомогательной сборки: "library", "exe" или "win". По умолчанию используется значение "library". |
Satellite_Title |
Задает строковое значение для поля "Title" во вспомогательной сборке. |
Satellite_Trademark |
Задает строковое значение для поля "Trademark" во вспомогательной сборке. |
Satellite_Version |
Определение сведений о версии данной вспомогательной сборки. |
Satellite_Win32Icon |
Вставка во вспомогательную сборку файла значка .ico. |
Satellite_Win32Resource |
Вставка во вспомогательную сборку ресурса Win32 (файл .res). |
TargetCompactFramework |
Версия платформы .NET Compact Framework, необходимая для запуска создаваемого приложения. Указание данного значения позволяет ссылаться на определенные сборки .NET Framework, которые могут быть недоступны иным образом. |
TargetFrameworkVersion |
Версия .NET Framework, необходимая для запуска создаваемого приложения. Указание данного значения позволяет ссылаться на определенные сборки .NET Framework, которые могут быть недоступны иным образом. |
TreatWarningsAsErrors |
Если для данного логического параметра задано значение true, все предупреждения обрабатываются как ошибки. Этот параметр соответствует переключателю компилятора /nowarn. |
UseHostCompilerIfAvailable |
Если для данного логического параметра задано значение true, то задача построения использует внутрипроцессный объект компилятора. Этот параметр используется только в Visual Studio. |
Utf8Output |
Если для данного логического параметра задано значение true, выходные данные компилятора регистрируются в кодировке UTF-8. Этот параметр соответствует переключателю компилятора /utf8Output. |
VbcToolPath |
Дополнительный путь, указывающий другое расположение vbc.exe при переопределении текущей версии vbc.exe. |
VbcVerbosity |
Задает уровень детализации для выходных данных компилятора Visual Basic. Допустимые значения: "Quiet", "Normal" (значение по умолчанию) или "Verbose". |
WarningsAsErrors |
Задает список предупреждений, которые следует обрабатывать как ошибки. Этот параметр соответствует переключателю компилятора /warnaserror. |
WarningsNotAsErrors |
Задает список предупреждений, которые не следует обрабатывать как ошибки. Этот параметр соответствует переключателю компилятора /warnaserror. |
Win32Manifest |
Имя файла манифеста, который необходимо внедрить в окончательную сборку. Этот параметр соответствует переключателю компилятора /win32Manifest. |
Wint32Resource |
Имя файла ресурса Win32, который необходимо внедрить в окончательную сборку. Этот параметр соответствует переключателю компилятора /win32resource. |