如果我知道进程标识符,是否有一些机制在.net(或pinvoke作为最后的手段)来捕获/重定向我没有启动的进程的标准输出?
答案 0 :(得分:1)
您可以AttachConsole您的进程到另一个进程的控制台,然后使用通常的控制台I / O函数从中读取和写入。
请记住先使用FreeConsole从进程的当前控制台中分离。
答案 1 :(得分:0)
据我所知,您无法在.NET中执行此操作,您可以重定向仅通过ProcessStartInfo Class启动的流程的输出。
据我所知,在进程启动后,您根本无法在外部重定向I / O,只有进程本身可以执行此操作。
您可以通过AttachConsole Function将调用流程附加到指定流程的控制台。
答案 2 :(得分:0)
编辑:看起来它确实无效,正如本主题中的另一个答案所指出的那样。
我没有亲自尝试过,但似乎,自答案被接受后,this就可以了。