5

在 C 中的 win32 编程中:

在另一个 win32 程序中执行 win32 控制台程序的最佳方法是什么,并让开始执行的程序捕获输出?目前我让程序将输出重定向到一个文件,但我确定我必须能够打开某种管道?

4

1 回答 1

5

使用CreateProcessWin32 API 启动子进程。

向它传递一个STARTUPINFO带有hStdInput,hStdOutput和句柄的结构,这些hStdError句柄设置为您打开的文件句柄(真实文件或内存映射文件都应该工作)。您不需要指定所有三个,您可以只重定向您真正需要的那些;最常见的情况是hStdOutput

如果要与子进程通信(通过hStdInput),则需要通过调用等待它初始化WaitForInputIdle

于 2009-02-27T08:03:36.793 回答