在Qt中启动外部程序较简单,上代码:
QProcess process; process.start("notepad.exe");
这样就启动了一个记事本程序。
这里增加点难度,只允许当前系统中运行一个记事本程序。
分两步:
- 判断当前是否运行记事本程序
- 不存在,启动记事本
看代码:
QProcess process; process.start("tasklist"); process.waitForFinished(); //等待命令执行结束 QByteArray result = process.readAllStandardOutput(); if(-1==result.indexOf("notepad.exe")) { process.startDetached("notepad.exe"); }
总结:先执行tasklist
命令,获取进程列表,进而检索是否存在待启动程序的名称即可判断是否已存在。
文章来源: Qt中启动外部程序