龙空技术网

Qt 检测第三方软件是否运行、杀死第三方进程

QT教程 333

前言:

今天朋友们对“qt调用命令行程序”大体比较关怀,看官们都需要了解一些“qt调用命令行程序”的相关资讯。那么小编同时在网上网罗了一些对于“qt调用命令行程序””的相关文章,希望看官们能喜欢,看官们一起来了解一下吧!

前言

在 Qt 开发中,有时候想要检测某个软件是否正在运行,或者想通过在代码中杀死某个指定的进程名称,调用 Windows 原生接口可以实现相应的需求,也可以通过在终端中通过命令行的方式来实现,而这里要分享的是通过 Qt 执行终端命令来实现该功能,这种方式会比较简单,代码量也会非常少。

正文

检测第三方软件是否运行

bool CheckAppRunningStatus(const QString &appName){#ifdef Q_OS_WIN    QProcess* process = new QProcess;    process->start("tasklist" ,QStringList()<<"/FI"<<"imagename eq " +appName);    process->waitForFinished();    QString outputStr = QString::fromLocal8Bit(process->readAllStandardOutput());    if(outputStr.contains(appName)){        return true;    }    else{        return false;    }#endif
强制退出第三方软件
void KillAppProcess(const QString &appName){#ifdef Q_OS_WIN    QProcess p;    QString c = "taskkill /im " + appName + " /f";    p.execute(c);    p.close();#endif

以上终端命令都是通过查阅相关资料得知的,然后通过 Qt 的QProcess来执行命令,代码结构非常简单,可以直接拿来使用。

点击领取Qt学习资料+视频教程~

链接:

标签: #qt调用命令行程序