Я создал класс CMDHandler для обработки всех моих команд CMD, которые у меня есть в моем проекте.
Например:
CMDHandler.Run ("/ c \" "+ DWClientSetupChainerV1 +" \ "");
CMDHandler.Run ("taskkill / F / IM \" DWClientSetupChainerV1 .exe \ "");
Хотя кажется, что процесс моего CMDHandler никогда не закрывается, и поэтому он не может запустить второй. У кого-то есть идея, что я делаю неправильно?
К вашему сведению: Код выхода не всегда использовался.
namespace Automated_Tests
{
class CMDHandler
{
private static readonly ILogger logger = LoggerFactory.Create(typeof(Program));
public int Run(string command)
{
var proc = new Process();
try
{
ProcessStartInfo startInfo = new ProcessStartInfo()
{
FileName = "CMD",
Arguments = command,
UseShellExecute = false
};
proc = Process.Start(startInfo);
proc.WaitForExit();
return proc.ExitCode;
}
catch (Exception ex)
{
logger.Log(LogLevel.Error, ex.Message);
}
finally
{
proc.Close();
}
return 0;
}
}
}