C# Console.WriteLine()在发布期间写入什么?

C# Console.WriteLine()在发布期间写入什么?,c#,.net,winforms,console.writeline,C#,.net,Winforms,Console.writeline,所以我想知道,当运行常规winforms应用程序时,Console.WriteLine()方法写入到哪里 我知道在调试过程中,它会很高兴地吐出调试输出中的所有文本,但是当我不再像最终用户那样调试和使用程序时,所有内容都会转到哪里去呢?它进入某种缓存了吗?公羊的深度?去拉脱维亚度假 如果它写入运行时可以访问的内容,我们是否可以以某种方式将其显示给用户,或者将所有内容写入文本文件或其他内容?控制台。WriteLine()将在调试或发布模式下写入标准输出。所以你有办法在发布模式下捕捉它 如果我记得的话

所以我想知道,当运行常规winforms应用程序时,
Console.WriteLine()
方法写入到哪里

我知道在调试过程中,它会很高兴地吐出调试输出中的所有文本,但是当我不再像最终用户那样调试和使用程序时,所有内容都会转到哪里去呢?它进入某种缓存了吗?公羊的深度?去拉脱维亚度假

如果它写入运行时可以访问的内容,我们是否可以以某种方式将其显示给用户,或者将所有内容写入文本文件或其他内容?

控制台。WriteLine()
将在调试或发布模式下写入标准输出。所以你有办法在发布模式下捕捉它


如果我记得的话,Debug.WriteLine还有一种替代方法,它没有在发行版中编译。

我认为您的问题实际上是想捕获
控制台.WriteLine()
。首先,
Console.WriteLine()
写入标准输出流,可以通过附加控制台窗口或通过其他截取流的方式读取标准输出流

如果要捕获要使用的调试或日志记录信息


然后,要将输出发送到文件,您可以设置一个文件或其他文件。

您是说Console.WriteLine还是Debug.WriteLine

Console.WriteLine在调试和发布配置下的工作方式相同。如果您配置类似于项目的控制台应用程序,并在发布模式下启动它,您将首先在后台获得一个控制台,在这里您将看到所有输出


如果未定义Debug,则Debug.WriteLine有一个条件语句。它没有写任何东西。

那不一定是真的。可以读取标准输出,而无需使用控制台窗口。例如,它可以由使用
进程的启动程序读取。启动
运行它,然后访问标准输入/输出。@Servy,好的,我已经更新了我的答案,希望更准确。我认为拉脱维亚是正确的答案;)一个有趣的后续问题可能是:能否附加到正在运行的进程的标准输出(用于日志记录)?