Отказ от ответственности: еще не используйте MsBuild, все взятые из документов и некоторых экспериментов IDE
Согласно ссылке командной строки MsBuild ( http://msdn.microsoft.com/en-us/library/ms164311.aspx ):
/ Свойство: имя = значение
Устанавливает или переопределяет эти свойства уровня проекта, где name - это имя свойства, а значение - значение свойства. Используйте точку с запятой или запятую для разделения нескольких свойств или укажите каждое свойство отдельно. / p также приемлемо. Например: / property: WarningLevel = 2; OutputDir = bin Debug
настройка или переопределение - это все, что вы можете сделать для значения свойства. Добавление к значению свойства из файла проекта либо невозможно, либо случай скрытой функции.
Но я предполагаю, что вы можете сделать, это определить настраиваемое свойство в вашем файле dproj с «по умолчанию»:
<PropertyGroup>
<ExtraDefines> </ExtraDefines>
</PropertyGroup>
ссылаться на то, что в вашем заявлении определяет
<DCC_Define>DUNIT;$(ExtraDefines);$(DCC_Define)</DCC_Define>
который в IDE должен быть DUNIT;$(ExtraDefines)
а затем укажите его в командной строке:
msbuild boohoo.dproj /p:Config=Release;ExtraDefines="hoo"
Я тестировал добавление $ (ExtraDefines) к параметрам Include для проекта с использованием IDE. И, по крайней мере, это не задело меня, даже не имея опцию, определенную в dproj. Командная строка IDE, полученная от этого, была:
...rad studio7.0indcc32.exe --no-config -B -Q -DDEBUG;DUNIT; -E....
Который, кажется, указывает, что $ (ExtraDefines) был ликвидирован, поскольку он не имел никакого значения. И что его нужно подобрать с помощью MSBuild и указать значение в командной строке.