QT下呼叫外部程式

2021-06-07 09:20:25 字數 571 閱讀 8679

qt呼叫shell 或 外部程式有三種方法:

第一種方法,是呼叫linux c 函式庫中的 system(const char *string);

system ("opt/ts_test");

第二種方法:

qprocess::execute ("opt/ts_test");

第三種方法:

qprocess *poc = new qprocess;

poc->start("opt/ts_test");

需要說明的時,上面三種方法都是可以的,但前兩種方法會

阻塞程序,直到 ts_test 程式結束,而第三種方法則

不會阻塞程序,可以多工執行。

還有,我們知道 qt 在執行的時候,要啟動 qws(qt windows server),如果用前面兩種方法,則smplayer執行的時候,要新開啟乙個qws,否則不能執行;而用第三種方法,則不需要再開啟qws,它和當前程式共用乙個qws,這樣,在乙個視窗裡可以看到這兩個程式。

QT呼叫外部程式

qt呼叫外部程式 system calc.exe qprocess execute calc.exe qprocess startdetached calc.exe qprocess pro new qprocess pro start calc.exe 注釋 1 前兩種方法會阻塞程序,直到計算器程...

QT中呼叫外部程式的方法

上個月有人寫信問我這個問題,當時做了比較詳細的回答,把回答內容放上來,也許對其它 人會有些用處的吧。有些地方我的理解可能也不正確,歡迎指正 問題 回答 1 完全可以使用fork,execv函式,其實qprocess類只是對這些底層函式的封裝而 已,但是考慮到使用qprocess的話,不需要自己處理程...

Qt程式設計呼叫外部程式開啟檔案

qdesktopservices openurl qurl fromlocalfile filename filename 檔名,如c 新建 microsoft word 文件.doc qurl fromlocalfile 一定要用這個方法,因為檔名或路徑中中文或空格,不然打不開檔案.直接用qurl...