我只是尝试通过 PATH env 解析它的位置来运行一个新进程。变种。因为我使用 Qt 这意味着我添加了
X:\文件夹\
到我的 PATH 变量和我正在调用的启动器应用程序中
QProcess::startDetached("test.exe")
这实际上有效。
但是 test.exe 将数据写入其工作目录。这些数据最终出现在启动应用程序的目录中,而不是 X:\folder\ 这不是我想要的。
我通过在 CLI 中键入“test.exe”直接在 Windows 命令行中测试了该行为,并且在那里是相同的(将数据写入当前目录)。
有没有办法(在 C++ 或命令行中)使用 PATH 启动进程,同时使用 PATH 中找到的目录作为新进程的工作目录?
我可以自己搜索 PATH,分析结果并通过另一个 QProcess::startDetached() 重载启动程序,但我想知道是否有更简单的方法。