当前位置: 代码迷 >> QT开发 >> 在window和Linux下QProcess启动应用程序,该如何解决
  详细解决方案

在window和Linux下QProcess启动应用程序,该如何解决

热度:93   发布时间:2016-04-25 05:02:07.0
在window和Linux下QProcess启动应用程序
有一个问题想请教一下:
我在window下用QProcess类启动cmd去调用一个程序,代码如下:
 QProcess *icemProcess=new QProcess;
 QStringList arguments;
 QString cmd="cmd";  
arguments<<"/k"<<"programPath";
icemProcess->startDetached(cmd,arguments);

然后我还想当程序在Linux下运行时用bash来启动同样的程序,所写代码如下:
  QProcess *icemProcess=new QProcess;
  QStringList arguments;
  QString bash="bash";  
 arguments<<"-c"<<"programPath";
  icemProcess->startDetached(bash,arguments);

这个效里就和在window下不一样,它并不会出现像cmd那样的黑框后,在调出程序(programPath)而是直接将程序打开,并且
正常程序所显示的信息它存到QtCreator编辑器的Application Out里面了,我想请教一下,如果想与window下有一样的调用效果的话,要怎么改一下,或有没有其它更好的办法? 谢谢!

------解决方案--------------------
bash没有图形界面,楼主如果想要一个图形界面的话,必须先搞清楚你在GNOME下还是KDE下,在GNOME下可以调用gnome-terminal程序,KDE下是konsole。
------解决方案--------------------
若选用linux bash就是这样的效果,不是说改改Qt程序就可以改变的。
顺便顶LS一个:bash没有图形界面,楼主如果想要一个图形界面的话,必须先搞清楚你在GNOME下还是KDE下,在GNOME下可以调用gnome-terminal程序,KDE下是konsole。
  相关解决方案