将外部应用程序嵌入Winform平台的Winform中

时间:2012-09-12 04:53:19

标签: c# winforms windows-ce

我想知道是否有人对如何将Windows应用程序(notepad.exe)嵌入到Winform中有任何想法。我找到了一个桌面应用程序的示例,它将word嵌入winform(http://www.codeproject.com/Articles/11819/Integrating-Microsoft-Word-in-your-NET-application)但不确定我将如何为notepad.exe或Win CE平台中的任何其他可执行文件执行此操作。它还使用了记事本没有的互操作程序集,而coredll.dll缺少user32.dll的一些菜单功能。

我还查看了使用活动X和来自opennetCF的AxHost库的MS示例,但它使用了DLL中的公开函数(WMPLib.dll和ShockWaveObjects.dll)。我已经尝试过这个例子并将DLL复制到我的Windows文件夹中,但它崩溃时出现异常消息“Class not registered”。

1 个答案:

答案 0 :(得分:0)

您可以通过将可执行文件作为不同的进程运行,然后将进程的父窗口更改为winform中的一个来实现此目的。这个link到MSDN显示WinCE API公开了SetParent方法。

相同的代码在桌面应用程序中对我有用,所以一切顺利,它也适用于移动平台。