有時在程序中需要運行其它的程序並獲得輸出的結果來進行進一步的處理。.NET框架已經提供了相應的類和方法,我們可以十分方便的實現我們的目標。
下面這個例子是我以前用到的,主要用到了Process 類和ProcessStartInfo類。
Process類的主要作用是提供對本地和遠程進程的訪問並使您能夠啟動和停止本地系統進程。
ProcessStartInfo類的主要作用是為Process類指定啟動進程時使用的一組值。
代碼
1 Process process = new Process();
2 ProcessStartInfo startInfo = new ProcessStartInfo("cmd.exe");
3 startInfo.UseShellExecute = false;
4 process.StartInfo = startInfo;
5 process.StartInfo.RedirectStandardInput = true;
6 process.StartInfo.RedirectStandardOutput = true;
7 process.Start();
8
9 process.StandardInput.WriteLine("netstat -an");
10 process.StandardInput.WriteLine("exit");
11
12 string netMessage = process.StandardOutput.ReadToEnd();
13 process.WaitForExit();
14 process.Close();
15 return netMessage;
上面一段代碼的作用是在新的進程中打開一個控制台,運行"netstat -an"命令,並獲取輸出的結果。