startDetached和Environment变量

时间:2014-03-17 09:47:11

标签: c++ qt qt4 environment-variables

我找到了这个主题:Set Environment Variables for startDetached() QProcess。这解释了如何通过重载startDetached()函数来解决Qt 4的环境变量。

我遇到了与startDetached()相同的问题,这意味着我无法使用setEnv()为我新生成的进程设置环境变量。

但是,我正在使用Qt 4.8.5并且帖子现在已经超过3年了,有没有办法在Qt 4.8.5中为Qt中的分离进程设置环境变量?

我有点卡住,因为我不知道如何重载qProcess函数,如果可能的话我真的想找到一个更简单的解决方案......

您有更简单的解决方案吗?或者你能解释一下如何应用超载的吗?

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找的是QProcessEnvironment,这是一个生成环境变量的名称 - 值对以传递给QProcess的类。

您可以通过以下方式使用它:

QProcessEnvironment environment = QProcessEnvironment::systenEnvironment();
QProcess process;
process.setProcessEnvironment(environment);

注意:上面的代码是未经测试和未编译的,但应该非常接近用例。