handle
hread,hwrite;
sa.nlength =
sizeof
(security_attributes);
sa.lpsecuritydescriptor = null;
//使用系統預設的安全描述符
sa.binherithandle = true;
//建立的程序繼承控制代碼
if
(!createpipe(&hread,&hwrite,&sa,0))
//建立匿名管道
startupinfo si;
process_information pi;
zeromemory(&si,
sizeof
(startupinfo));
si.cb =
sizeof
(startupinfo);
getstartupinfo(&si);
si.hstderror = hwrite;
si.hstdoutput = hwrite;
//新建立程序的標準輸出連在寫管道一端
si.wshowwindow = sw_hide;
//隱藏視窗
si.dwflags = startf_useshowwindow | startf_usestdhandles;
char
cmdline[200];
cstring tmp,stredit2;
getdlgitemtext(idc_edit2,stredit2);
//獲取編輯框中輸入的命令列
tmp.format(
"cmd /c %s"
,stredit2);
sprintf
(cmdline,
"%s"
,tmp);
if
(!createprocess(null,cmdline,null,null,true,null,null,null,&si,&pi))
//建立子程序
closehandle(hwrite);
//關閉管道控制代碼
char
buffer[4096] = ;
cstring stroutput;
dword
bytesread;
while
(
true
)
closehandle(hread);
在dos下執行程式並得到執行結果
imports system.diagnostics dim p as new process p.startinfo.filename cmd.exe p.startinfo.useshellexecute false p.startinfo.redirectstandardinput true ...
C語言執行cmd命令並獲取執行結果
優點 跨平台 缺點 windows下呼叫時會閃出控制台視窗 include include brief 使用popen呼叫終端並獲取執行結果 param in cmd 命令內容 param out result 儲存結果的位址 return 0或1 執行狀態,失敗或成功 int exec cmd c...
cmd 執行命令
一 一鍵開啟執行 開啟 執行 視窗,都是通過 開始 選單中的命令來完成的。其實我們可以為執行建立乙個快捷方式,一鍵開啟執行視窗。右擊桌面上的快捷方式,開啟屬性視窗。切換到 快捷鍵 方式選項卡,在 快捷鍵 裡面輸入乙個按鍵,然後單擊 確定 按鈕,這樣我們要開啟執行視窗時只需要按下該快捷鍵即可。二 快速...