您的位置:首页 > 编程语言 > Qt开发

Qt调用外部程序QProcess

2016-04-06 09:56 656 查看
Qt调用外部程序QProcess

(1)使用startDetached或execute

使用QProcess类静态函数QProcess::startDetached(const QString &program, constQStringList &argument)或者QProcess::execute(const QString &program, const QStringList &argument);startDetached 函数不会阻止进程, execute会阻止,即等到这个外部程序运行结束才继续执行本进程。

例如执行:Shutdown.exe -t -s 3600

[html] view plain copy

QStringList list;

list<< “-t” << “–s” << “3600”;

QProcess::startDetached(“Shutdown.exe”,list);

// QProcess::execute(“Shutdown.exe”,list);

(2)创建QProcess,使用start函数

可以查看外部程序返回的数据,输出结果。

[html] view plain copy

QProcess *pProces = new QProcess(this);

connect(pProces, SIGNAL(readyRead()),this, SLOT(on_read()));

QStringList list;

pProces->start(“Shutdown.exe”, list);

void on_read()

{

QProcess pProces = (QProcess )sender();

QString result = pProces->readAll();

QMessageBox::warning(NULL, “”, result);

}

(3)执行的是程序,如route、ipconfig

[html] view plain copy

QProcess p(0);

p.start(“route”);

p.waitForStarted();

p.waitForFinished();

qDebug()<
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  qt