参考博客:https://www.cnblogs.com/wangqiguo/p/4609228.html
https://www.cnblogs.com/mathyk/p/10141572.html
使用调用:通过编译生成之后,再进行调用另外一个运行的程序:
1、界面中实现的三个功能如下:
加上头文件:# <QProcess>
void MainWindow::on_pushButton_clicked()
{
//调用另外一个进程
QProcess p(0);
//路径精确到要运行的exe所在的文件夹名称
p.setWorkingDirectory("C:/Users/Administrator/Desktop/xxx_release");
//路径精确到需要运行的exe全部路径
QString command ="C:/Users/Administrator/Desktop/xxx_release/xxx_Demo.exe";
p.start(command);
p.waitForFinished();
qDebug()<<"111111"<<QString::fromLocal8Bit(p.readAllStandardError());
}
二、kill正在运行的进程
void MainWindow::on_pushButton_4_clicked()
{
//关闭正在运行的进程,这时只需要指定进程名称就行
QString c = "taskkill /im xxx_Demo.exe /f";
//关闭后台xxx_Demo.exe进程,阻塞式运行,一直占用cpu,成功返回0,失败返回1
int pInt = QProcess::execute(c);
qDebug()<<"pInt:"<<pInt;
}
三、qt执行cmd命令:
参考博客:https://www.cnblogs.com/mathyk/p/10141572.html
//使用cmd命令
void MainWindow::on_pushButton_5_clicked()
{
QProcess p(0);
p.start("cmd", QStringList()<<"/c"<<"ping www.baidu.com");
p.waitForStarted();
p.waitForFinished();
QString strTemp=QString::fromLocal8Bit(p.readAllStandardOutput());
qDebug()<<"1111"<<strTemp;
QMessageBox testMassage;
testMassage.setText(strTemp);
testMassage.exec();
}