如何从另一个Qt程序执行分离的C ++可执行文件?

时间:2016-04-19 09:34:10

标签: c++ qt opencv

我想执行一个.exe文件,它是由Qt程序中的g ++(或gcc)编译的。我引用this topic并尝试让它运行:

// Setup the working directory
QDir::setCurrent("/home/myproject");

// Start the process (uses new working dir)
bool t= myProc.startDetached("./work");
if (t==false) std::cout<< "Error";
else std::cout <<"OK";

但我的结果总是“错误”,即使程序“work”是一个GUI程序,我的屏幕也没有变化。我在终端做过,但在QProcess我不能:(。我做错了什么?

1 个答案:

答案 0 :(得分:1)

这可能是一个错字问题。确保QDir::setCurrent("home/")确实返回true;如果没有,目录更改失败,您不在您期望的目录中。

首先尝试启动您的executbale(使用myProc.execute()代替myProc.startDetached(),然后检查会发生什么。这可能会发现一些在启动分离时无法看到的错误。请确保您的程序能够正常运行&#39 ;不执行stdin的任何输入。