如何解决如何使用 QProcess 等待子进程?
我尝试使用此代码等待子进程:
auto child = new QProcess;
child->start("cmd.exe");
child->waitForFinished();
但是 cmd.exe 没有打开,主程序运行。什么错误?
我应该如何正确等待? waitForFinished
默认等待 30000 毫秒。如果我想无限等待怎么办?
解决方法
建议使用waitForStarted
(doc)检查返回值是否启动成功,并尝试使用CMD的完整路径:"C:/windows/system32/cmd.exe"
。
另外,上网查一下,问题已经有人问过了here。
要无限等待,您需要使用 -1 (doc) 调用 waitForFinished
:
child->waitForFinished(-1);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。