shellexecute系列函式,可以執行控制台命令,但是無法實現輸出重定向。
system函式,可以執行命令,並實現輸出重定向,但是無法隱藏控制台視窗。
createprocess函式,則既可以執行命令,又可以實現輸出重定向,同時不顯示控制台視窗。
但是,createprocess函式的使用顯得有些複雜。
我們可以將他包裝一下,讓他變得和shellexecute或system一樣好用。
下面的函式my_exec就實現了這種包裝。
通過my_exec執行命令,並實現輸出重定向非常方便。
例如,執行ping命令,將結果輸出到c:\haha.txt中。則按如下方式呼叫即可。
my_exec(text("ping www.csdn.net"), text("c:\\haha.txt"), -1);
再如,執行dos命令dir,並將結果輸出到c:\fff.txt中。則按如下方式呼叫即可。
my_exec(text("cmd.exe /c dir d:") , text("c:\\fff.txt"), -1);
好了,函式my_exec的**實現如下。
int my_exec(tchar *cmd, tchar *output_file, int wait_time_sec)
win32視窗程式轉為控制台
windows支援兩種型別的程式,gui graphical user inte ce 和cui console user inte ce 他們是通過乙個叫載入器的東西進行載入,vs中只要修改聯結器 系統 子系統中的值,如果是gui則是 subsystem windows 如果是cui則是 subs...
Win32視窗程式使用控制台
win32視窗程式使用控制台對應的函式是allocconsole和freeconsole。向控制台輸出 allocconsole handle hd getstdhandle std output handle writeconsole hd hello console n sizeof hello...
win32控制台 win32工程 MFC工程的區別
空專案 控制台 問2個問題即可。1.控制台 vs win32 mfc?嗯,有不有臉?有臉,選win32或mfc。沒有臉,選控制台。臉就是視窗,就是window.s 這個有臉 這個沒臉 控制台與win32 mfc 互動方式的不同,前者是cml 命令模式 後者是gui 使用者介面 2.mfc vs wi...