我知道这可能是一个奇怪的问题,但让我先解释它背后的想法。 我有一个win32应用程序暴露了一个Activex主机,这给了我以下有用的功能:
我被要求将此应用程序迁移到Java SWT,但我不知道是否可以在不丢失上述功能的情况下完成,唯一的方法可能是将应用程序本身作为Activex主机公开,这是否可行?
非常感谢。
答案 0 :(得分:1)
我没有使用ActiveX的经验,但在SWT主页上有lot of examples are in snippets folder。试着检查一下..
答案 1 :(得分:1)
如果您将应用程序迁移到Java SWT,那么将失去在IE中以及基于COM或ActivX技术的其他MS产品中使用的所需功能。虽然一种粗略的方法可能是使用某些双向COM代理,如Jacob。
如果给出了选择,那么我将利用SWT对COM的内置支持,并尝试将您的activex组件嵌入到我的swt应用程序中。例如,您可以查看:
org.eclipse.swt.browser.IE
- 允许以SWT浏览器控件的形式访问IE ActiveX组件。org.eclipse.compare.internal.win32.WordComparison
这是eclipse的文件差异插件的一部分。这个类编写得非常好,并提供了一个COM风格的片段,可以区分两个MS文件。通过这种方式,我可以将activex保持原样用于任何目的。
有关于在不使用任何第三方COM桥的情况下向swt添加activex支持的this文章