2011-09-17 226 views
0

我有必须写入控制台的应用程序。此外,我也从dll调用函数写入标准输出。现在我想要有单独的输出窗口来获取来自dll的所有输出。 (所以我会有2个控制台窗口:一个用于客户端应用程序,一个用于dll)如何制作它?我用windows + mingw其他控制台窗口

回答

3

你不行。 stdout是一个单独的文件句柄,如果你的应用程序代码和dll都在写它,它们将会去同一个地方,不管你做什么。

你最好的选择是要么:

  1. 更改应用程序代码写入到除了标准输出(即标准错误或文件)的东西,或者
  2. 改变你的应用程序代码,以便其输出语句'标记'的方式,你可以使用像grep或sed/awk这样的工具进行过滤
+0

Adpalumbo是对的。一个进程只能有一个控制台。实现这一目标的唯一方法是将其制作为GUI应用程序,并创建两个看起来像控制台窗口的窗口。 –