«все символы» здесь действительно важны. Если вы используете / p: DefineConstants для определения константы, вы потеряете все остальные определенные константы в проекте. DefineConstants должен содержать все необходимые в проекте константы, которые нельзя смешивать и сопоставлять константы, определенные в проекте и определенные с помощью DefineConstants.
зможно, просто слепой, но есть ли командная строка для указания символов условной компиляции в MSBUILD?
В настоящее время у меня есть эта строка в моем buildscript:
SET MSBUILD=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe
SET CONFIG=Debug
%MSBUILD% /p:Configuration=%CONFIG% /p:OutputPath=..\..\output source\MyProject\MyProject.csproj
И я хотел бы добавить условие. В Visual Studio я могу просто войти в Project Properties => Build => Условные символы компиляции, но я не видел эту опцию для msbuild?
Бонус Карма, если вы знаете, могу ли я полностью переопределить все символы, уже указанные в файлах .csproj, чтобы убедиться, что в него входят только условные выражения из моего Buildscript.