我有以下代碼。cmd.exe進程永不完成
ProcessStartInfo si = new ProcessStartInfo("cmd.exe");
si.RedirectStandardInput = true;
si.RedirectStandardOutput = true;
si.UseShellExecute = false;
si.WindowStyle = ProcessWindowStyle.Hidden;
si.CreateNoWindow = true;
Process p = Process.Start(si);
p.StandardInput.Write("ipconfig");
p.StandardInput.Write("exit");
string consoleOutput = p.StandardOutput.ReadToEnd();
string dir="here";
執行到達「字符串consoleOutput」,但從來沒有達到「字符串目錄」,即代碼卡上讀取StandardOutput。它在控制檯應用程序中運行,如果這有所作爲。
如果您已經從控制檯應用程序運行,爲什麼不直接調用'ipconfig'而不是不必要地產生'cmd'? – Petesh
我可以用console.write來做這個嗎? – coolblue2000
console.write實際上不會啓動該進程,它是啓動它的'Process.Start(si)'。 – Petesh