1、通过调用Linux C 函数
system("calc.exe");
2、通过QProcess 阻塞调用
QProcess::execute("calc.exe");/QProcess::startDetached("calc.exe");
3、通过QProcess,非阻塞调用
QProcess *pro = new QProcess;
pro->start("calc.exe");
注释:
1、前两种方法会阻塞进程,直到计算器程序结束,而第三种方法则不会阻塞进程,可以多任务运行。
2、QT在运行的时候,要启动qws服务,如果用前两种方法,运行的时候,要新开启一个qws,否则不能运行;而第三种方法,则不需要在开启qws,他和主进程公用一个qws。
3、第三种虽然不会阻塞,但是有可能在终端上看不到打印出来的信息。所以要在终端显示信息,可以考虑阻塞模式。