在C# 中若要使用外部程式的功能,可以使用Process 來執行,但是若要取得外部程式標準輸出時

可使用StandardOutput 方法取得,搭配ReadToEnd() 讀取輸出的資訊,取得這些資訊後就可以

在C#程式中做進一步的處理。

 

以下是使用C#程式執行外部指令 schtasks.exe 指令,這個指令是Windows XP 內建的指令

讓系統管理員能夠在本機或遠端系統上建立、刪除、查詢、結束排程工作。

重點是第11行及第16行

  1: public void TaskCreate(string TskName,string TskRemoteComputer,
  2:             string TskRuningCommand,string TskScheduleType,string TskStartDate,string TskStartTime )
  3:         { 
  4: 
  5:             Process TskProcess = new Process();
  6:             TskProcess.StartInfo.FileName = "c:\\windows\\system32\\schtasks.exe";
  7:             TskProcess.StartInfo.Arguments = " /create /tn " + TskName + " /s " + TskRemoteComputer
  8:                            + " /tr " + TskRuningCommand + " /sc " + TskScheduleType + " /sd " + TskStartDate 
  9:                            + " /st " + TskStartTime + " /ru system ";
 10:                             
 11:             TskProcess.StartInfo.UseShellExecute = false;  //啟動標準輸出為True
 12:             TskProcess.StartInfo.RedirectStandardOutput = true;
 13:             TskProcess.StartInfo.WorkingDirectory = Application.StartupPath;
 14:             TskProcess.Start();
 15:             //讀取外部程式執行時產生的標準輸出內容   
 16:             string TskOutput = TskProcess.StandardOutput.ReadToEnd();
 17:             MessageBox.Show(TskOutput);
 18:             TskProcess.Close();
 19: 
 20:         }
arrow
arrow
    全站熱搜

    奔騰兔 發表在 痞客邦 留言(0) 人氣()