【问题标题】:Opening an application inside a form - C# or VB.NET在表单中打开应用程序 - C# 或 VB.NET
【发布时间】:2008-11-06 15:41:13
【问题描述】:

我正在编写一个应用程序,我希望能够在其中显示另一个应用程序。 (想像一个带有小框的 Windows 窗体,或显示完全独立应用程序的选项卡。)

这是可以做到的吗?如果是这样,任何人都可以就如何去做吗?

我正在寻找 C# 或 VB.NET 领域的东西。

谢谢!

【问题讨论】:

    标签: c# vb.net winforms


    【解决方案1】:

    您需要来自另一个应用程序的窗口的 hWnd(句柄)。 然后,您需要在您的应用程序中使用 hWnd 容器控件(System.Windows.Forms.Control.Handle 属性)。

    然后你需要使用 Win32API 函数SetParent,这就是你所需要的。 SetParent 页面上的示例很少,应该可以满足您的需要。

    【讨论】:

    • 当然,这要求你要嵌入的窗口已经存在——否则你无法得到它的句柄。但它仍然很漂亮:upvote。
    • 如果你想将它嵌入到你的容器中,你总是需要存在窗口。当“A”不存在时,您是否随时将“A”添加到“B”中:)?问题是“我怎样才能找到我想要的窗口”。您可以使用“Process.MainWindowHandle”属性或“EnumWindows”Win32API 函数。
    猜你喜欢
    • 2015-02-26
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 1970-01-01
    • 2021-12-02
    • 2012-04-18
    • 2018-05-06
    • 1970-01-01
    相关资源
    最近更新 更多