在C#中捕获标准输出的内容

在C#中捕获标准输出的内容,第1张

概述我正在使用外部库(.dll),其中一些方法(包括构造函数)将内容写入标准输出(a.k.a控制台),因为它旨在与控制台应用程序一起使用.但是我试图将它合并到我的 Windows窗体应用程序中,所以我想捕获此输出并以我喜欢的方式显示它.即我的窗口中的“状态”文本字段. 我能找到的只是ProcessStartInfo.RedirectStandardOutput,虽然它显然不符合我的需要,因为它在示例中 我正在使用外部库(.dll),其中一些方法(包括构造函数)将内容写入标准输出(a.k.a控制台),因为它旨在与控制台应用程序一起使用.但是我试图将它合并到我的 Windows窗体应用程序中,所以我想捕获此输出并以我喜欢的方式显示它.即我的窗口中的“状态”文本字段.

我能找到的只是processstartinfo.RedirectStandardOutput,虽然它显然不符合我的需要,因为它在示例中与其他应用程序(.exe)一起使用.我没有执行外部应用程序,我只是使用DLL库.

@H_403_5@解决方法 创建一个StringWriter,并为其设置标准输出. @H_419_8@StringWriter stringw = new StringWriter();Console.Setout(stringw);

现在,打印到控制台的任何内容都将插入到StringWriter中,您可以通过调用stringw.ToString()随时获取其内容,这样您就可以执行类似textBox1.AppendText(stringw.ToString()); (因为你说你有一个winform并有一个状态文本字段)来设置文本框的内容.

总结

以上是内存溢出为你收集整理的在C#中捕获标准输出的内容全部内容,希望文章能够帮你解决在C#中捕获标准输出的内容所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1248351.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-07
下一篇2022-06-07

发表评论

登录后才能评论

评论列表(0条)

    保存