Как определить символы препроцессора, используя аргументы командной строки devenv.com?C#

Место общения программистов C#
Ответить
Anonymous
 Как определить символы препроцессора, используя аргументы командной строки devenv.com?

Сообщение Anonymous »

После этого поста я хочу добавить глобальные директивы препроцессора (эквивалентные #define в каждый файл .cs), используя аргументы командной строки devenv.com.Я уже знаю два способа добиться этого:
  • Использование MSBuild:

Код: Выделить всё

msbuild.exe MyProject.csproj /p:DefineConstants="MYMACRO;TRACE"
  • Добавление в файл .csproj:

Код: Выделить всё

MYMACRO;TRACE

Однако я специально хочу узнать, как это сделать с помощью аргументов командной строки devenv.com. Когда я пытаюсь:

Код: Выделить всё

devenv.com MyProject.csproj /Build "Release|AnyCPU" /p:DefineConstants="MYMACRO;TRACE"
Я получаю сообщение об ошибке:

Код: Выделить всё

Invalid Command Line. Unknown Switch : MYMACRO;TRACE.
Минимальный рабочий пример
MacroTest.csproj:

Код: Выделить всё




Debug
AnyCPU
{8A9C5693-0BB4-4E15-9D6A-C3E6E6B42B80}
Exe
MacroTest
MacroTest
v4.7.2
512
true
true


DEBUG;TRACE


TRACE








Program.cs:

Код: Выделить всё

using System;

namespace MacroTest
{
class Program
{
static void Main(string[] args)
{
#if MYMACRO
Console.WriteLine("MYMACRO is defined!");
#else
Console.WriteLine("MYMACRO is NOT defined!");
#endif
Console.ReadKey();
}
}
}
Я использую Visual Studio Professional 2019 (версия 16.11.42).
Есть ли способ определить символы препроцессора с помощью devenv.com< /code> аргументы командной строки? В справке по команде /Build ничего не говорится о передаче свойств, но, возможно, мне не хватает еще одного переключателя?

Подробнее здесь: https://stackoverflow.com/questions/792 ... -arguments
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»