QProcess呼叫bat指令碼 QString bat("F:\\mybat.bat"); QFile file1(bat); file1.open(QIODevice::Rea
阿新 • • 發佈:2018-11-04
在某些應用場景下可能需要呼叫批處理,在qt中可以輕鬆實現
#include "widget.h" #include <QApplication> #include <QProcess> #include <QDebug> #include <QTextCodec> int main(int argc, char *argv[]) { QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK")); QProcess process; QString bat("F:\\mybat.bat"); process.start(bat); if(process.waitForStarted()){ qDebug()<<"程式啟動成功"; process.waitForFinished(5000); QString ret = process.readAll(); qDebug()<<ret; } }
需要注意的是,當bat指令碼中存在中文字元時,需要使用notepad++或其他工具將指令碼檔案的編碼轉成ANSI格式