【发布时间】:2018-03-24 05:51:02
【问题描述】:
我需要检查进程是否开始正确。
我在网上找到了this answer 类似的问题,但我的有点不同。
同步
对于同步检查,我可以轻松地执行以下操作:
QProcess process("foo.exe");
if (!process.waitForStarted()) {
qWarning() << process.errorString();
}
异步
对于异步检查,我可以这样做:
QProcess *process = new QProcess("foo.exe");
connect(process, &QProcess::errorOccurred, [=]() {
qWarning() << process->errorString();
});
但是,QProcess::errorOccurred 仅在 Qt 5.6 中引入。
问题
那么我该如何执行异步检查QProcess是否在Qt 中正确启动?
【问题讨论】:
-
QProcess::errorOccurred与QProcess::error基本相同。那为什么你的不一样?如果你解释它,我会修改或删除我的答案。