我一直很难获得“子进程”的输出(一个由我通过 c# System.Diagnostics.Process 监控的黑盒进程在内部启动)
我接受了我之前帖子的答案给出的建议: here。在那里你可以找到我所经历的细节。
此时,虽然我能够找到由 process1.exe 生成的 ssh 进程,但我正在监视它。我无法将输出重定向到我的 c# 程序,因为它是一个“已经在运行的进程”,并且不是直接从 C# 启动的。
看来,您在 System.Diagnostics.Process 对象上设置的所有属性只有在您从 c# 应用程序显式启动该进程时才会生效;如果其他一些“非托管进程”已启动该进程,则设置此重定向无效,因为该进程已由未指定我需要的重定向的东西启动。
有没有办法重定向已经启动的进程的输出(由程序启动的进程,在启动此进程之前我没有预先指定重定向的范围)?