Перехват вывода CMD и Powershell в переменную string?
Как сделать вывод результата команд CMD и Powershell не в консоль и не в текстовый файл, а сразу в переменную string?
Ответы (1 шт):
Автор решения: polsok
→ Ссылка
static void Main()
{
//cmd
Process processCMD = Process.Start(new ProcessStartInfo
{
FileName = "cmd",
//нужно использовать кодировку иначе будут кракозябры
Arguments = "/c chcp 65001 & ipconfig",
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true,
WindowStyle = ProcessWindowStyle.Hidden
}
);
string t1 = processCMD.StandardOutput.ReadToEnd();
//PewerShell
Process processPowerShell = Process.Start(new ProcessStartInfo
{
FileName = "powershell",
Arguments = "/command Get-Date",
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true,
WindowStyle = ProcessWindowStyle.Hidden
}
);
string t2 = processPowerShell.StandardOutput.ReadToEnd();
}