【问题标题】:Can I merge the standard output and standard error of a Process with the output of a console window in C#?我可以将进程的标准输出和标准错误与 C# 中控制台窗口的输出合并吗?
【发布时间】:2009-11-23 05:33:40
【问题描述】:

我正在通过 Process.Start 启动一个进程并重定向标准输出。我可以通过流程实例上的标准输出流访问标准输出,但我必须继续检查它。是否可以将该输出重定向到我的控制台窗口的标准输出?

【问题讨论】:

    标签: c#


    【解决方案1】:

    如果我对您的问题的理解是正确的,那么您是在说您正在重定向标准输出,但您必须继续从该流中读取数据以阻止进程在缓冲区已满时阻塞。您不想继续阅读,所以您正在寻找一种将标准输出重定向到控制台窗口的方法?

    既然如此,为什么不直接重定向标准输出呢?如果你不重定向它,控制台窗口不是它会去的地方吗?

    如果您必须重定向标准输出,最好的方法可能是在线程池上放置一个委托以从标准输出流中读取。如果只想读取所有输出,可以调用 ReadToEnd。如果您想显示它以及访问代码中的输出,您可以读取然后将其写入控制台。

    【讨论】:

    • 没试过没有重定向标准输出,哈哈
    猜你喜欢
    • 1970-01-01
    • 2015-02-11
    • 2012-12-11
    • 2019-09-03
    • 2016-08-07
    • 2017-06-09
    • 2011-06-26
    • 2012-08-05
    • 2011-12-01
    相关资源
    最近更新 更多