Я создал веб-сервис для внутреннего сервера, на который я хочу отправить команду и запустить ее.Поэтому я хочу отправить ему команду следующим образом:
http://machine:999/execute?path=c:\scripts\dostuff.exe&args=-test
Затем конечная точка будет делать что-то вроде этого:
public ActionResult(string path, string args)
{
var proc = new System.Diagnostics.Process();
proc.StartInfo.FileName = path;
proc.StartInfo.Arguments = args;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
proc.StartInfo.RedirectStandardOutput = true;
//Hook into all standard output here
//Block until process is returned - Async Controller action
return Content(output.ToString())
}
Я хочу иметь возможность перехватывать все сообщения об ошибках.и стандартный вывод, сгенерированный исполняемым файлом.Исполняемый файл может быть как консольное приложение, так и скрипт powershell.Как лучше всего делать что-то подобное?