当使用boost::process::system
或boost::process::child
启动进程时,我正在寻找一种指定工作目录的方法。在文档中https://www.boost.org/doc/libs/1_77_0/doc/html/boost_process/tutorial.html是一些有用的例子,但与我感兴趣的主题无关。
child
构造函数如下所示:
template<typename ...Args>
child::child(Args&&...args)
我还没有找到涵盖Args
可能是什么的完整文档,只有一些不完整的例子。
#include <boost/process/start_dir.hpp>
namespace bp = boost::process;
int result = bp::system("/usr/bin/g++", "main.cpp", bp::start_dir("/home/user"));
bp::child c(bp::search_path("g++"), "main.cpp", bp::start_dir("/home/user"));
c.wait();
请参阅boost::process::start_dir和完整的参考。
参数是引用中的程序名称、程序参数和其他进程属性。