重定向控制台程序的标准输入/输出是一件小事,但是如果程序使用高级控制台功能呢?像输出彩色文本,把光标扔在周围,直接操作控制台缓冲区?也可以捕获并重定向到我自己的程序进行处理吗?
注意:我正在讨论的场景是,我的应用程序(不一定是控制台应用程序)运行控制台应用程序,并将其输入/输出重定向到自身。
注2:最后我要C代码,但现在让我们坚持裸露的Win32 API和C或C++。不管怎样,我认为没有pinvoke是不可能的,所以让我们先把基本原理写下来(如果可能的话)。