Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/139.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 我可以从我不控制的进程中读取标准输出吗?_C++_Windows_Pipe_Stdout - Fatal编程技术网

C++ 我可以从我不控制的进程中读取标准输出吗?

C++ 我可以从我不控制的进程中读取标准输出吗?,c++,windows,pipe,stdout,C++,Windows,Pipe,Stdout,一些预先存在的应用程序将信息写入其控制台/标准输出,即使它们在没有可见控制台窗口的服务器上运行 有没有一种方法可以访问给定进程的stdout和流?重申:我无法了解这些进程是如何启动或工作的,我只想能够使用它们的stdout 我在Windows上用VC++工作。我肯定以前见过控制台应用程序以这种方式相互链接?您可以通过让它们将输出写入管道来读取启动进程的输出,我认为您无法捕获已经在Linux上运行的进程的输出。有些程序使用ptrace将目标进程的stdout重新打开到其他地方。假设您可以在Wind

一些预先存在的应用程序将信息写入其控制台/标准输出,即使它们在没有可见控制台窗口的服务器上运行

有没有一种方法可以访问给定进程的stdout和流?重申:我无法了解这些进程是如何启动或工作的,我只想能够使用它们的stdout


我在Windows上用VC++工作。我肯定以前见过控制台应用程序以这种方式相互链接?

您可以通过让它们将输出写入管道来读取启动进程的输出,我认为您无法捕获已经在Linux上运行的进程的输出。有些程序使用ptrace将目标进程的stdout重新打开到其他地方。假设您可以在Windows上使用
CreateRemoteThread
执行相同的操作,但如果它发生故障,您可以保留这两部分。