The Exec task calls cmd.exe instead of directly invoking a process.
Этот таск используется для вызова утилиты ilasm.exe
примерно таким образом.
Вопрос, зачем было так делать, если в статье
https://docs.microsoft.com/ru-ru/dotnet/api/microsoft.build.utilities.tooltask?view=msbuild-16-netcore
есть реализация класса
public class ILAsm : ToolTask
который вызывает утилиту ilasm напрямую?
Я спрашиваю потому что у Microsoft плохая документация для параметра ExitCode у задачи Exec
и мне непонятно, в каких случаях происходит останов сборки:
— когда утилиты вывела что-либо в stderr (ExitCode должен стать равен -1)
— или только когда у утилиты код возврата не 0