Могу ли я использовать приложение Java SWT в качестве хоста Activex? - PullRequest
0 голосов
/ 28 сентября 2011

Я знаю, что это может быть немного странным вопросом, но позвольте мне сначала объяснить идею, стоящую за этим. У меня есть приложение win32, выставленное на хост Activex, это дает мне следующие полезные функции:

  • Встраивайте и вызывайте его из Internet Explorer как просто для передачи / возврата значений из него с помощью JavaScript.
  • Встраивайте и вызывайте его из любого приложения win32, созданного на таких языках, как Visual Basic, C ++, Delphi и т. Д. Даже я могу назвать его из продуктов MS Office, таких как Excel и Word.

Меня попросили перенести это приложение на Java SWT, но я не знаю, можно ли это сделать без потери упомянутых возможностей, единственным способом может быть представление самого приложения как хоста Activex, возможно ли это ?.

Большое спасибо.

Ответы [ 2 ]

1 голос
/ 28 сентября 2011

Если вы перенесете свое приложение на Java SWT, тогда вы потеряете желаемую функциональность использования в IE, а также в других продуктах MS на основе технологии COM или ActivX. Хотя одним грубым способом может быть использование двунаправленного COM-брокера, например Jacob .

Если будет предоставлен выбор, я воспользуюсь встроенной в SWT поддержкой COM и постараюсь встроить ваш компонент activex в мое приложение swt. Например, вы можете посмотреть на:

  1. org.eclipse.swt.browser.IE - Предоставляет доступ к компоненту IE ActiveX в виде элемента управления браузером SWT.
  2. org.eclipse.compare.internal.win32.WordComparison это часть плагина diff файла eclipse. Этот класс написан очень хорошо и дает отрывок из двух файлов MS Word со вкусом COM.

Таким образом, я могу сохранить activex в любых целях.

Существует эта статья о добавлении поддержки ActiveX в SWT без использования стороннего COM-моста

1 голос
/ 28 сентября 2011

У меня нет опыта работы с ActiveX, но множество примеров находится в папке фрагментов на домашней странице SWT.Попробуйте проверить их ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...