这是一个.NET问题
假设我通过ProcessStartInfo创建一个命令行进程,指定:
我可以将它的输出读作ByteStream并将其打印在我自己的控制台上。细
但是如果我的子进程选择设置光标位置,那就不会发生。
这是有道理的,因为它没有自己的窗口(由于CreateNoWindow选项)并且没有虚拟控制台。因此,它没有有效的句柄传递给SetCursorPosition
所以我要问的是:
如何授予我的子进程访问我自己的控制台句柄的权限? 这样它就像拥有控制台(窗口)
一样我知道Powershell可以做到,但我不知道它是使用WindowsAPI还是有一些.NET方法来实现它。