[問題] c++ system vs createprocess

作者: OfficeGL (努力上班族)   2019-09-16 16:08:46
目前有一個執行檔案, 是自己寫的程式編譯完成的 A.exe
在另一個用 c++ 寫的程式中要呼叫 A.exe 起來動作
目前知道兩種用法
一種是簡單地透過 system( cmd_c_string );
呼叫起來執行
另一種方式是透過 createprocess () 做出子程序去跑
(VS2017 編譯環境)
我想請問的是, 這兩種做法的差異是什麼呢?
目前感覺兩個結果都一樣
那比較推薦永哪種作法呢~
謝謝唷~~
作者: joechen1008 (:))   2019-09-16 19:43:00
作者: LPH66 (-6.2598534e+18f)   2019-09-16 20:55:00
system 是跨平台通用, 但多一層 CRT 幫你轉系統呼叫CreateProcess 則是 Windows 的系統呼叫本身
作者: eye5002003 (下一夜)   2019-09-16 21:05:00
popen比system便宜,lua裡面是採用popen
作者: uranusjr (←這人是超級笨蛋)   2019-09-18 12:41:00
1. 效能 2. 如果你想傳東西進去接東西出來 system 無法

Links booklink

Contact Us: admin [ a t ] ucptt.com