加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

qt – QProcess和shell:进程仍在运行时被销毁

发布时间:2020-12-15 22:13:42 所属栏目:安全 来源:网络整理
导读:我想用Qt启动一个 shell脚本. QProcess process;process.start(commandLine,QStringList() confFile);process.waitForFinished();if(process.exitCode()!=0){ qDebug () " Error " process.exitCode() process.readAllStrandardError();}else{ qDebug () " O
我想用Qt启动一个 shell脚本.

QProcess process;
process.start(commandLine,QStringList() << confFile);
process.waitForFinished();

if(process.exitCode()!=0)
{
    qDebug () << " Error " << process.exitCode() << process.readAllStrandardError();
}
else
{
    qDebug () << " Ok " << process.readAllStrandardOutput() << process.readAllStrandardError();
}

结果是:

Ok : Result…. ” “” QProcess : Destroyed while process is still
running.

此消息不会每次都出现.

问题是什么?

解决方法

process.waitForFinished();正在达到默认的30秒超时.使用process.waitForFinished(-1);代替.这将确保您等待该过程完成所需的时间,而不会超时.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读