c# - 在修改 Cursor 的代码中重定向标准输出

标签 c# .net stdout io-redirection

我有一个程序(无源代码),我想重定向 stdout 和 strerr,这样我就可以解析进度指示器并在调用它的应用程序中显示进度。

问题是此应用程序调用了 Console.Clear()、SetWindowSize、Cursor.Top 等。

这些似乎会破坏重定向并使应用程序崩溃。我已经设法通过在 il 代码中对这些调用进行 NOP 操作使其正常工作,但这当然比其他任何事情都更像是一种 hack。

我想知道是否有一种方法可以在不删除这些调用的情况下重定向 STD。

最佳答案

不,你卡住了。

您不能在重定向端口中使用任何这些花哨的功能。

关于c# - 在修改 Cursor 的代码中重定向标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10818953/

相关文章:

c# - 使用 WebAPI 2 进行 JSON.NET 抽象/派生类反序列化

c# - 在 C# 中运行程序时,所有消息都转到标准输出,但标准错误不包含任何内容

c# - 由于回发而未存储变量

c# - .NET 5.0 对字符串比较的 `IEnumerable<T>.OrderBy` 行为的重大更改

c# - 是否可以将多个验证组分配给单个验证控件?

java - 子进程:不输出

python - 使进程在 python 中一次输出一个

c# - EF 代码生成 : How to get a System enum to work as an EdmEnumType?

c# - IEqualityComparer<T> 和 IEquatable<T> 有什么区别?

c# - 如何解决我的 StringBuilder 问题?