我想创建一个程序,允许我打开一个已经存在的程序的实例(我只是有exe)作为内部的窗口(我相信它的名为mdi)
这是我能做的吗?谁能指点我一个例子?
由于
答案 0 :(得分:2)
也许这就是您正在寻找的答案here。它可以完成......查看给定链接上的示例。
希望这有帮助, 最好的祝福, 汤姆。
答案 1 :(得分:0)
当Windows启动程序时,其父程序是桌面窗口。
如果你能以某种方式操纵它,它可能会起作用。
但是,我怀疑这是否可能,为什么我要允许您在窗口中运行我的应用程序?特别是MDI?除此之外 - 在子窗口中运行与在“主”窗口中运行并不完全相同。
说过那里有一个应用程序(不能想到它的名称OH)确实将各个应用程序放在选项卡中。如果你不在Windows 7上,那就太漂亮了。在软件业务论坛上的人们可能会帮助你找到它。
答案 2 :(得分:0)
好吧,在启动应用程序并存储其PID之后,您可以开始监视已创建的窗口,通过CBTHook或仅使用计时器和GetWindows来查找何时由PID创建顶级窗口问题
然后你可以使用SetParent使该窗口成为MDIChild的子窗口(我怀疑你可以直接将它作为你的MDIChild)。
这应该让你去。你真的不知道之后会遇到什么。我想你必须关联你的应用程序或外部应用程序的任何移动,以便它们的窗口看起来粘在一起......
Maybo你可以从外部应用程序中删除标题(Get / SetWindowsLong)。这可能会让它看起来更好......