多个进程呈现到一个窗口

时间:2011-08-24 02:31:18

标签: mfc

渲染到一个窗口的多个进程

两个进程,两个窗口,但是一个窗口充当另一个窗口的子窗口。 例如,窗口包含编辑ctrl,但编辑ctrl属于另一个进程。 如何实现这样的MFC应用程序?

3 个答案:

答案 0 :(得分:0)

我不认为有多个线程管理UI的东西是个好主意。

您应该只有一个线程负责UI(主线程)并根据需要创建尽可能多的工作线程。但是这些工作线程不直接访问UI,但它们通知(SendMessage / PostMessage)主线程来执行UI工作。

答案 1 :(得分:0)

窗口及其子窗口必须属于同一进程。周期。

您可以做的是将进程的输出(例如stdout)重定向到管道。 GUI过程依次读取管道并将内容显示到专用子窗口(编辑框或其他)。

MSDN article about input/output redirection可能会有所帮助。

答案 2 :(得分:0)

实际上你可以做到这一点,但有一些限制。

例如,您可以在应用中嵌入MS word。 Word窗口作为子窗口嵌入到您的应用程序中。但实际上,还有另一个进程winword.exe。

您的应用程序作为复合文档容器,嵌入式应用程序充当复合文档服务器。

请从MSDN找到“复合文档”相关内容。