我刚刚了解了一些有关 Microsoft CreateProcess 函数的知识,但我仍然不知道如何将输入、输出和错误流重定向到我自己的流。例如,如果我创建这样的流程:
...
comp_exec_args.success = CreateProcess(NULL, comp_exec_args.params, NULL, NULL, comp_exec_args.inherit_handle,
comp_exec_args.c_flags, NULL, comp_exec_args.root.c_str(),
&comp_exec_args.startup_info, &comp_exec_args.process_info) ;
...
那么如何分别创建 std::istream、std::ostream 和 std::ostream 类型的 proc_in、proc_out 和 proc_err 变量,它们将成为进程的输入/输出/错误流?更准确地说,我可以说我不希望将流程流连接到默认标准输入、输出和错误流,但我想将它们保留在其他地方。