一、QProcess启动进程
QProcess program;
QString cmd = “xxx.exe”; //选择自己要执行exe程序
program.start(cmd);
program.waitForFinished();
二、waitForFinished的问题
QProcess中waitForFinished的问题,当我们执行一个超过30s的动作的时候,int msecs = 30000,那么就会直接finish,像遇到解压文件这种情况并且要等finish时候用解压的文件的时候,就会出现问题。
如何解决?
方法:waitForFinished(-1); 表示一直等待,直到进程结束。比如:
QProcess program;
QString cmd = “xxx.exe”;
QStringList args;
args.append(“-h”);
program.start(cmd, args);
program.waitForFinished(-1);
QProcess进程,waiforfinished等待时间过长直接退出问题
最新推荐文章于 2024-07-17 17:06:56 发布