日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt中利用QProcess调用外部cmd.exe执行程序

發布時間:2023/12/10 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt中利用QProcess调用外部cmd.exe执行程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、#include "mainwindow.h"中

添加頭文件:

#include <QProcess>

添加成員:

QProcess *myprocess;

?添加槽函數聲明:

void showCMDResult(); void showCMDState(QProcess::ProcessState state); void showCMDError(); void showCMDFinished(int exitCode, QProcess::ExitStatus exitStatus);

2、mainwindow.cpp中

構造函數中實例化:

myprocess = new QProcess;

添加槽函數:

connect(myprocess, SIGNAL(readyRead()), this, SLOT(showCMDResult())); connect(myprocess, SIGNAL(stateChanged(QProcess::ProcessState)),this, SLOT(showState(QProcess::ProcessState))); connect(myprocess, SIGNAL(error(QProcess::ProcessError)),this, SLOT(showCMDError())); connect(myprocess, SIGNAL(finished(int,QProcess::ExitStatus)),this, SLOT(showCMDFinished(int, QProcess::ExitStatus)));

實現槽函數:

void MainWindow::showCMDResult() {QString strTemp=QString::fromLocal8Bit(myprocess->readAll());ui->textEdit->append(strTemp); }void MainWindow::showCMDState(QProcess::ProcessState state) {if(state==QProcess::NotRunning)qDebug() << "Not Running";else if(state==QProcess::Starting)?qDebug() << "Starting";;elseqDebug() << "Running"; }void MainWindow::showCMDError() {ui->textEdit->append(myprocess->errorString()); }void MainWindow::showCMDFinished(int exitCode, QProcess::ExitStatus exitStatus) {ui->textEdit->append(QString("啟動結束:").append("退出代碼:").append(QString::number(exitCode)).append("退出狀態:").append(QString::number((uint)exitStatus))); }?

?? ??3、啟動cmd.exe

QStringList argument; argument<<"/C"<<"python"<<ui->lineEdit_filepath->text()<<ui->lineEdit_inputpara->text(); myprocess->start("cmd.exe",argument); ui->textEdit->append("啟動cmd.exe"); // 等待進程啟動 if (!myprocess->waitForStarted()) {ui->textEdit->append("啟動失敗");return; }??

??

總結

以上是生活随笔為你收集整理的Qt中利用QProcess调用外部cmd.exe执行程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。