是否可以启动一个新进程并将其主窗口设置为我的MDI应用程序的子窗口?

时间:2009-03-28 13:17:31

标签: windows mdi

是否可以启动新进程并将其主窗口设置为我的MDI应用程序的子窗口?

场景是:我有一个MDI应用程序,我想启动Adobe Acrobat作为我的MDI应用程序的子窗口。

3 个答案:

答案 0 :(得分:3)

理论上,我认为可以使用SetParent.

然而,在实践中,这可能比您预期的要困难一些。此外,您还需要完成同步样式等的工作。

只是想一想 - 如果你试图嵌入Acrobat Reader(不是完整的Acrobat),你可以通过嵌入webcontrol并使用acrobat reader插件来更容易地实现这一点......


以下是一些人的样本(至少部分):

Related SO question针对特定问题提供解决方法。

CodeProject article using SetParent

Experts-exchange question关于在win32应用程序中嵌入java应用程序。

答案 1 :(得分:1)

我不相信这是可能的,至少不使用SetParent。引用SetParent文档:

  

应用程序可以使用SetParent   用于设置父窗口的函数   弹出窗口,重叠窗口或子窗口。   新的父窗口和子窗口   窗口必须属于同一个   应用

答案 2 :(得分:1)

我认为你想要的并不容易,但是可以尝试整合一个开源的PDF查看器(如果你准备去GPL那么可能是一个选择,因为这可能是许可证他们中的大多数)。一些链接: