2013-04-04 38 views
15

Tôi đang thực hiện một lệnh command prompt như sau:C# thực hiện lệnh shell và nhận được kết quả

string cmd = "/c dir" ; 
System.Diagnostics.Process proc = new System.Diagnostics.Process(); 
proc.StartInfo.FileName = "cmd.exe" 
proc.StartInfo.Arguments = cmd; 
proc.StartInfo.UseShellExecute = false; 
proc.StartInfo.RedirectStandardOutput = true; 
proc.Start(); 

Làm thế nào để tôi nhận được đầu ra của lệnh?

+0

Xem câu trả lời này làm thế nào để sử dụng 'ReadToEnd'method: http://stackoverflow.com/a/7160384/214222 –

Trả lời

19

thử này

string output = proc.StandardOutput.ReadToEnd(); 
+2

Vâng cảm ơn! Nó đã làm việc! – Mika

+0

làm thế nào tôi có thể nhận được kết quả tương tự nếu tôi đặt "proc.StartInfo.UseShellExecute = true;"? – anion

+0

Điều này không thu được đầu ra khi có lỗi. – Arjang

Các vấn đề liên quan