【问题标题】:Embed an external application into a Winform for a WinCE platform将外部应用程序嵌入 WinCE 平台的 Winform
【发布时间】:2012-09-12 04:53:18
【问题描述】:

我想知道是否有人对如何将 Windows 应用程序 (notepad.exe) 嵌入 Winform 有任何想法。我在网上找到了一个将单词嵌入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 文件夹,但它崩溃并出现异常消息“类未注册”。

保罗

【问题讨论】:

  • ce 设备上已经安装了“word mobile”——你可以用它代替记事本吗?它比记事本功能更强大,但远不及桌面版 Word 的功能。如果你可以使用它,你就不需要嵌入,只需弄清楚如何用你的程序打开它
  • 你到底在追求什么?应用中的文本编辑功能,或者只是在可能没有安装记事本的平台上从应用启动记事本的功能?

标签: c# winforms windows-ce


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多