我在使用QProcess时遇到了麻烦,我已经查看了几个使用它的位置,但是每次我使用它时我的程序都会冻结,或者它只是没有做我想做的事情.
我想从GUI应用程序做的事情如下:
将目录更改为/ Users/Tim/etc等.从那里我需要调用gnuplot并将脚本加载到其中.
我通常会在终端窗口中执行以下操作:
> cd /Users/Tim/...
> /opt/local/bin/gnuplot barchartscript.txt
Run Code Online (Sandbox Code Playgroud)
目前我正在使用系统调用来执行此操作,这是有效的,但是每个人都建议使用QProcess,所以我想这样做.
我的代码现在如何使用QProcess:
QObject *parent;
QProcess *process = new QProcess(parent);
QString commands;
QString changed = "cd /Users/Tim/etcetc";
commands = (changed + "&& /opt/local/bin/gnuplot scatterplotscriptwithout.txt").c_str();
process->start(commands);
Run Code Online (Sandbox Code Playgroud)
谁能告诉我什么是错的?或者在一个进程中执行多个命令的正确方法?