QT Creator QProcess

Posted

技术标签:

【中文标题】QT Creator QProcess【英文标题】: 【发布时间】:2015-06-10 01:12:52 【问题描述】:

我想运行一个 fortran 可执行文件,当我在我创建的界面中单击按钮时调用该可执行文件。

虽然当我点击按钮时没有任何反应。代码如下:

QProcess *process = new QProcess(this);
QString program = QDir::currentPath() + "/PARROT/Console1.exe";
process->start(program);

字符串是这样的,因为我希望能够更改主可执行文件和 fortran 可执行文件的路径。

我做错了什么?

【问题讨论】:

您是否使用调试器逐步检查了这些行以验证 program 是否包含预期的路径? 不,我只是运行程序。 Stderr 可能不会报告任何内容。但是连接到 finished() 和 error() 信号并检查 errorString() 尝试使用QString program = QString("cmd /C %1%2").arg(QDir::currentPath()).arg("/PARROT/Console1.exe") 为什么标记为fortran?对于这个问题,可执行文件的来源并不重要...... 【参考方案1】:

检查此链接 - QProcess Start command syntax

语法 - void QProcess::start(const QString & program, const QStringList & arguments, OpenMode mode = ReadWrite)

您需要将参数列表作为第二个参数传递,同时将进程路径作为第一个参数传递,以启动进程。

【讨论】:

以上是关于QT Creator QProcess的主要内容,如果未能解决你的问题,请参考以下文章

qt creator 构建、配置

Qt creator交叉编译带图片的程序出现问题,版本4.7

qt creator 中 ui文件 怎么用编译界面修改?

QT+QT creator+OpenCV图像灰度化

qt creator 怎么画圆环,还要填充颜色

Install Qt creator