• QProcess类


    QStringList用来设置外部程序的参数。也可以通过setArguments()来设置(需要在调用start之前调用)。
    QString program = "./path/to/program"; //用不用双斜杠?

    QStringList arguments;
    arguments << "-style" << "fusion"; //不需要空格?

    QProcess *myProcess = new QProcess(this);
    myProcess->start(program,arguments);

    程序开始运行以后,发出started()信号。QProcess可把一个process当做一个顺序IO来对待,因此可以对其读写,即write(), read(), readLine()以及getChar()。process退出后,发出finished()信号。finished信号的参数包括exitCode和exitStatus,分别用exitCode()和exitStatus()来获得。process退出后,仍然可以继续读取缓冲区。

    QProcess可以处理相对路径和绝对路径。建议采用绝对路径。例如:
    QString program_path = QCoreApplication::applicationDirPath();
    QString program = program_path + "./program";
    程序可以不用扩展名exe,这样可以实现linux和windows平台无关特性。此外,可以全部采用/,QProcess会在windows上自动改成\。

    QProcess可以读取standard output和standard error的输出。如果有输出了,会发出readyReadStandardOutput()和readyReadStandardError()信号,可以使用readAllStandardOutput()或readAllStandardError()来读取全部数据。

  • 相关阅读:
    流程中心系统版本对应问题解决
    ssdfsafsd
    Web自动化css选择器定位法实现
    MobileViT——论文简述
    python 基础巩固小练习
    原型和原型链
    Portainer.io
    单元测试实战(五)普通类的测试
    Flink入门
    [PAT练级笔记] 17 Basic Level 1017 A除以B
  • 原文地址:https://blog.csdn.net/novanova2009/article/details/125906808