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/nh87 著作权归作者所有。请勿转载和采集!