qt4中如何监视一个进程是否打开或者关闭
在Qt4中,可以使用QProcess类来监视一个进程是否打开或关闭。以下是一个简单的示例:
#include <QtGui/QApplication>
#include <QtCore/QDebug>
#include <QtCore/QProcess>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QProcess process;
process.start("notepad.exe");
// 监视进程是否打开
while (!process.waitForStarted()) {
qDebug() << "等待进程启动...";
}
qDebug() << "进程已启动!";
// 监视进程是否关闭
while (process.state() != QProcess::NotRunning) {
qDebug() << "进程正在运行...";
process.waitForFinished(500);
}
qDebug() << "进程已关闭!";
return app.exec();
}
在上面的示例中,我们使用QProcess类启动了notepad.exe进程,并在while循环中监视进程是否打开或关闭。waitForStarted()方法将阻塞直到进程启动,state()方法将返回进程的状态,waitForFinished()方法将阻塞直到进程关闭。
注意:该示例在Windows平台上运行正常,在其他平台上可能需要修改启动进程的命令。
原文地址: https://www.cveoy.top/t/topic/bUGs 著作权归作者所有。请勿转载和采集!