QDir更改目录以从主qt程序启动另一个程序

时间:2016-11-24 08:16:06

标签: c++ qt visual-studio-2013

我在vs 2013解决方案中有两个项目。第一个项目是命令行项目,另一个项目是用户界面,允许用户选择各种选项并调用第一个项目。

solution
--Project1 ( console)
---Debug folder
--Project2 ( GUI)
qt中的

我使用以下代码启动project1 ( console)

QProcess *process = new QProcess(this);
QDir::setCurrent("build/GPURenderDemo/Debug");
std::cout << QDir::currentPath().toStdString() <<endl;

process->start(QString::fromStdString(getConstructedArgs()));

然而,project1没有被执行,QDir::currentPath()返回非现实数据。

D:/******/build/GUI0000000063F0A785

2 个答案:

答案 0 :(得分:0)

您可以直接设置QProcess的工作目录,请参阅QProcess::setWorkingDirectory()

答案 1 :(得分:0)

QDir::setCurrent设置当前进程的工作目录,这是你的意思吗?此外,它返回一个bool,以便您可以看到它是否成功,总是值得检查。

您可以设置以QProcess::setWorkingDirectory开头的控制台进程的工作目录。

如果没有进一步的意图细节,我认为我们无法提供更多帮助。