读取应用程序的输出

时间:2013-12-19 10:06:33

标签: c++ windows winapi

我有一个应用程序,我想在哪里运行另一个基于控制台的exe并读取该控制台应用程序的输出?假设控制台应用程序是使用printf编写它的第三方exe。

1 个答案:

答案 0 :(得分:0)

使用CreateProcess()运行控制台应用程序,然后您可以使用STARTUPINFO结构来指定您自己的STDIN / OUT / ERR句柄供控制台使用。为此目的,通过CreatePipe()创建匿名管道,然后根据需要使用ReadFile()WriteFile()读取/写入管道。

MSDN上有一个例子:

Creating a Child Process with Redirected Input and Output