C 程式呼叫cmd執行命令

2022-01-15 14:47:30 字數 1562 閱讀 5689

//

string str = console.readline();

//手動輸入

string str = "

ipconfig

"; //

直接向cmd裡傳入的命令

system.diagnostics.process p = new

system.diagnostics.process();

p.startinfo.filename = "

cmd.exe";

p.startinfo.useshellexecute = false; //

是否使用作業系統shell啟動

p.startinfo.redirectstandardinput = true; //

接受來自呼叫程式的輸入資訊

p.startinfo.redirectstandardoutput = true; //

由呼叫程式獲取輸出資訊

p.startinfo.redirectstandarderror = true; //

重定向標準錯誤輸出

p.startinfo.createnowindow = true; //

不顯示程式視窗

p.start(); //

啟動程式

p.standardinput.writeline(str + "

&exit

"); //

向cmd視窗傳送輸入資訊

"exit");

//向標準輸入寫入要執行的命令。這裡使用&是批處理命令的符號,表示前面乙個命令不管是否執行成功都執行後面(exit)命令,如果不執行exit命令,後面呼叫readtoend()方法會假死

//同類的符號還有&&和||前者表示必須前乙個命令執行成功才會執行後面的命令,後者表示必須前乙個命令執行失敗才會執行後面的命令

p.standardinput.autoflush = true

;

string output = p.standardoutput.readtoend(); //

獲取cmd視窗的輸出資訊

p.waitforexit();

//等待程式執行完退出程序

p.close();

console.writeline(output);

我在之前測試的時候沒有加exit命令,輸入其他命令後視窗就假死了,也沒有輸出內容。

另一種c#呼叫cmd命令的方法

C 程式呼叫cmd執行命令

酷小孩 原文 c 程式呼叫cmd執行命令 string str console.readline system.diagnostics.process p new system.diagnostics.process p.startinfo.filename cmd.exe p.startinfo....

C 呼叫cmd執行ftp命令

1 c 執行cmd命令 public string execommand p.standardinput.writeline ping 134.224.48.78 p.standardinput.writeline exit stroutput p.standardoutput.readtoend ...

關於C 在後台呼叫cmd執行命令

在實際開發中,尤其是在開發相關工具的時候,常常會用到系統命令行工具cmd來在後台執行一些命令。執行命令列的方法有兩種,一種是帶有返回值的,另一種是不帶返回值的。相關方法如下。帶返回值的方法 執行帶返回值的cmd指令方法 string executecmdwithoutput string comma...