2011-09-27 71 views
0

我知道這可能是有點怪問題,但讓我先解釋一下它背後的想法。 我有一個Win32應用程序暴露一個ActiveX主機,這使我有以下有用的功能:我可以使用Java SWT應用程序作爲Activex主機嗎?

  • 嵌入並從Internet Explorer把它作爲一個簡單的使用JavaScript從它傳遞/返回值。
  • 和嵌入在像Visual Basic,C++,Delphi的等等。連我都從MS Office產品,如Excel和Word稱之爲語言的任何Win32應用程序調用它。

我被要求遷移該應用程序到Java SWT,但我不知道它是否能不失提到capabilites來完成,唯一的辦法可能是暴露應用程序本身作爲一個ActiveX主機,可以這是可能的?

非常感謝。

回答

1

我使用ActiveX沒有經驗,但在lot of examples are in snippets folder SWT主頁。嘗試檢查他們..

+0

是的,我知道,有很多圖書館從Java調用COM對象,但我需要做的是揭露一個java應用程序作爲一個Activex類,在這一刻,我想我可以使用activex橋爲javabeans做到這一點,但誰知道這是否可以爲整個java應用程序完成。 – xafkin

1

如果您的應用程序遷移到Java SWT,那麼你將失去使用IE和以及其他MS產品基於COM或ActivX的技術所需的功能。儘管一種粗糙的方式可能是使用一些雙向COM代理,如Jacob

如果有得選擇,然後我將利用SWT的內置支持COM,並會嘗試嵌入ActiveX組件在我的SWT應用程序。例如,你可以看看:

  1. org.eclipse.swt.browser.IE-允許形式SWT瀏覽器控件訪問IE ActiveX組件。
  2. org.eclipse.compare.internal.win32.WordComparison這是Eclipse的文件差異比較插件的一部分。該類寫得非常好,並給出了一個COM風格的片段,用於區分兩個MS字文件。

這樣我可以有完整的ActiveX用於任何目的。

this文章上添加的ActiveX支持SWT不使用任何第三方COM橋

相關問題