如何使用QProcess?

时间:2015-07-21 07:31:39

标签: qt qgis qprocess

我想从QProcess对象打开QGIS项目。 如果我在控制台下,我必须输入

qgis --project /path/of/my/qgis/project/nameofproject.qgs

然后,我做下一个:

QString app="qgis";
QStringList arguments;
arguments.append ("--project /path/of/my/qgis/project/nameofproject.qgs");

然后我以这种方式称呼它:

proceso->start(app,arguments);

但是我在通话中遇到了这个错误:

找不到/ home / david / Programacion / Qt / SQL / Sql2 / build-prueba2-Desktop_Qt_5_3_GCC_64bit-Debug / - project /home/david/GIS/CRCC.qgs

其中: / home / david / Programacion / Qt / SQL / Sql2 / build-prueba2-Desktop_Qt_5_3_GCC_64bit-Debug / 是我的Qt应用程序的路径和

- project /home/david/GIS/CRCC.qgs 是我在参数QStringList中设置的路径

我不知道如何设置QProcess对象以避开我的应用程序的路径。

谢谢

1 个答案:

答案 0 :(得分:2)

我会通过以下方式尝试。 With a single command

const QString command( "qgis --project /path/of/my/qgis/project/nameofproject.qgs" );

QProcess process;
process.start( command );

with arguments

const QString program( "qgis" );
QStringList arguments;
arguments << "--project";
arguments << "/path/of/my/qgis/project/nameofproject.qgs";

QProcess process;
process.start( program, arguments );