我可以保存控制台窗口的缓冲区或内容以备将来使用吗?

Chi*_*ata 6 c# console winapi input

我正在玩控制台应用程序,只是想知道.保存控制台窗口的当前缓冲区以供以后使用的最佳方法是什么,并提供一种历史导航功能.我知道Diagnostics命名空间提供了读取标准输出的能力,但只有当你重定向它时,所以基本上你必须在一个看起来有点愚蠢的新窗口中运行处理所有结果.

Jim*_*hel 8

您需要读取控制台屏幕缓冲区.

几年前我写了一系列关于从.NET访问Console API的文章.您感兴趣的文章是使用控制台屏幕缓冲区.

完整的源代码可从http://mischel.com/pubs/consoledotnet/consoledotnet.zip获得.