Страницы: 1
Опишу проблему:
Есть готовый ActiveX-компонент. В IE все работает отлично.
Появилась необходимость работать на этой страничке из FireFox.
Что я сделал: решил сделать из него плагин для браузера - ведь по сути это обычный dll файл.
Используя файл npapi.pas даже получилось выводить в браузере форму с кнопочками.
Единственное что не получилось, но очень нужно - что б Java Script мог вызывать функции и процедуры этой подключенной dll'ки-плагина.
Пробовал вот так:
<embed id="eee" src="fig1.xcv" type="application/demo" width=368 height=226 Red="255"> </embed> <a href="#" onClick="aaa()">Click me</a> <script> function aaa(){ var uu = document.getElementById("eee"); alert(uu); alert('Перед вызовом процедуры'); uu.CallMe(); alert('ПОсле вызова'); }
Вызывает только "alert('Перед вызовом процедуры');" и дальше не работает.
Вобщем вся проблема - в вызове из Java-скрипта функций подключенной библиотеки.
(Может слегка сумбурно написал, но думаю мысль понятна.
Если кто подскажет решение проблемы или может другой вариант буду очень благодарен!!!!)
Отсутствует
Danechka, почитайте Scripting Plugins in Mozilla, в инете есть примеры.
:::: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0
Отсутствует
Danechka, почитайте Scripting Plugins in Mozilla, в инете есть примеры.
Там про С написано, а хотелось бы про Delphi......
npapi.pas я нашел и даже создал плагин, который выводит в Firefox форму с кнопочками.
Единственное, что осталось - получить доступ к функциям этого плагина из JavaScript.
Насколько я понимаю, нужно смотреть в строну XPCOM, но примеров с Delphi никак не могу найти....
Отредактировано Danechka (03-07-2007 16:53:11)
Отсутствует
Может быть, плагин без соответствующего *.xpt ?
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Может быть, плагин без соответствующего *.xpt ?
гм... похоже да... а что это за файл? Это список экспортируемых функций плагина?
А как его получить в Делфи?
(Насколько я понимаю, то в С он получается, если пропустить .idl файл через компилятор xpidl.exe. Я прав? Также на выходе получается заголовочный файл .h, который нужно компилировать с проектом. Как же поступить в Делфи???)
Отредактировано Danechka (04-07-2007 10:44:05)
Отсутствует
Как же поступить в Делфи???
Точно так же, прописать в *.idl прототипы экспортируемых функций и пропустить через xpidl.
p.s. вот здесь: http://www.mozilla.org/projects/plugins … tml#script (Example 1).
Отредактировано Anton (04-07-2007 11:54:34)
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Как же поступить в Делфи???
Точно так же, прописать в *.idl прототипы экспортируемых функций и пропустить через xpidl.
p.s. вот здесь: http://www.mozilla.org/projects/plugins … tml#script (Example 1).
А как быть с файлом .h ? Его нужно как-то подключать к проекту???
У вас случайно примера никакого нет?
А то чувствую, что помимо xpt будут еще какие-то проблемы.
Отсутствует
А как быть с файлом .h ? Его нужно как-то подключать к проекту???
xpidl создаст *.h-файл, если будет задана опция командной строки '-m header'. Если будет задана опция '-m typelib', будет создан *.xpt.
У вас случайно примера никакого нет?
Нет. Плагинами и не-javascript компонентами я пока ещё не занимался.
А то чувствую, что помимо xpt будут еще какие-то проблемы.
Поискал по теме: http://developer.mozilla.org/en/docs/Ge … g_Plug-ins, http://www.mozilla.org/projects/plugins … tml#script, http://www.iol.ie/~locka/mozilla/plugin.htm, везде упоминается *.xpt. Если Delphi правильно реализует интерфейс в dll, думаю, проблем быть не должно.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Страницы: 1