我可以使用 Java SWT 应用程序作为 Activex 主机吗?

发布于 2024-12-06 17:18:00 字数 371 浏览 1 评论 0原文

我知道这可能是一个有点奇怪的问题,但让我先解释一下它背后的想法。 我有一个公开了 Activex 主机的 win32 应用程序,这为我提供了以下有用的功能:

  • 嵌入并从 Internet Explorer 调用它,作为使用 javascript 从中传递/返回值的简单方法。
  • 从任何使用 Visual Basic、C++、Delphi 等语言编写的 Win32 应用程序嵌入并调用它。甚至我也可以从 Excel 和 Word 等 MS Office 产品中调用它。

我被要求将此应用程序迁移到 Java SWT,但我不知道是否可以在不丢失上述功能的情况下完成,唯一的方法可能是将应用程序本身公开为 Activex 主机,这可能吗?

多谢。

I know this can be a bit of weird question, but let me explain the idea behind it first.
I have a win32 app exposed a an Activex host, this gives me the the following useful features:

  • Embed and call it from Internet Explorer as a simple to pass/return values from it using javascript.
  • Embed and call it from any win32 application made in languages like visual basic, c++, delphi etc. Even i can call it from MS office products like excel and word.

I have been asked to migrate this app to Java SWT but i don´t know if it can be done without losing the mentioned capabilites, the only way could be to expose the app itself as an Activex host, can this be possible?.

Thanks a lot.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

千寻… 2024-12-13 17:18:00

我没有使用 ActiveX 的经验,但是 SWT 的 很多示例都在 snippets 文件夹中主页。尝试检查它们..

I have no experience with ActiveX, but a lot of examples are in snippets folder at SWT homepage. Try to check them..

三岁铭 2024-12-13 17:18:00

如果您将应用程序迁移到 Java SWT,那么您将失去在 IE 以及其他基于 COM 或 ActivX 技术的 MS 产品中使用所需的功能。尽管一种粗略的方法可能是使用一些双向 COM 代理,例如 Jacob

如果有选择,我将利用 SWT 对 COM 的内置支持,并尝试将您的 activex 组件嵌入到我的 swt 应用程序中。例如,您可以查看:

  1. org.eclipse.swt.browser.IE -- 允许访问表单 SWT 浏览器控件中的 IE ActiveX 组件。
  2. org.eclipse.compare.internal.win32.WordComparison 这是 eclipse 文件差异插件的一部分。该类写得非常好,并提供了比较两个 MS Word 文件的 COM 风格的片段。

通过这种方式,我可以为任何目的保留完整的 activex。

这篇文章介绍如何向swt 不使用任何第三方 COM 桥

If you migrate your app to Java SWT then you will lose the desired functionality of using in IE and as well as in other MS product based on COM or ActivX technology. Although one crude way could be to use some bi-directional COM broker like Jacob.

If given a choice then I will utilize the SWT's in-built support for COM and will try to embed your activex component in my swt application. For example, you can look at:

  1. org.eclipse.swt.browser.IE -- Allows access to IE ActiveX component in the form SWT browser control.
  2. org.eclipse.compare.internal.win32.WordComparison this is a part of eclipse's file diff plugin. The class is very nicely written and gives a COM flavored snippet of diffing two MS word files.

In this way I can have the activex intact for whatever purposes.

There is this article on adding activex support to swt without using any third party COM bridge

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文