У меня есть эта проблема в VB.NET в C #, у меня есть этот проект, где мне нужно запустить командный файл, который достаточно прост.Но моя проблема в том, что мне нужно отобразить все, что отображается в командном файле, в окне cmd, в текстовом поле, теперь этот код открывает файл без проблем:
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.EnableRaisingEvents = false
proc.StartInfo.FileName = "C:\\Users\\jwoow\\Desktop\\Server\\run.bat";
proc.Start().ToString();
, но это не такпереместите код в текстовое поле, этот код передает последнюю отображаемую строку, но не всю часть командного файла, а также закрывает окно cmd, мне нужно, чтобы он оставался открытым:
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "C:\\Users/jwoow/Desktop/Server/run.bat";
//this line hides cmd window
//p.StartInfo.CreateNoWindow = true;
p.Start();
StreamReader output = p.StandardOutput;
while (output.EndOfStream == false)
{
string line = output.ReadLine();
this.RunResults.Text = line;
}
oда, пакетный файл предназначен для сервера, он отображает количество пользователей на нем (обновляется каждые 2 минуты) и показывает различные события, предпринятые пользователями.поэтому он постоянно обновляется.