protected int InternalRun(IRun run = null) { var program = Environment.ExpandEnvironmentVariables(this._program); var args = Environment.ExpandEnvironmentVariables(this._args); var executable = new Executable("cmd", $"/c \"{program} {args}\"", streamOutput: true); run?.Start(); var statusCode = executable.Run(StaticLogger.WriteLine, StaticLogger.WriteErrorLine); run?.End(); return(statusCode); }