Полезная информация

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.

№105-02-2007 13:34:38

semav
Участник
 
Группа: Members
Зарегистрирован: 05-02-2007
Сообщений: 2
UA: IE 7.0

Несколько вопросов по XPCOM расширению для FF

Всем привет!

Хочу перехватывать навигацию FF в своём расширении (типа BeforeNavigate2 в IE). Раньше с этим не сталкивался. Начал делать компонент как написано здесь http://www.mozilla.org/projects/xpcom/b … okTOC.html. Добавил ему интерфей nsIURIContentListener, чтобы в методе OnStartURIOpen перехватывать URL. Никахих других интерфейсов не добавлял(кроме nsISupports). Но, естественно, ничего не работает:

Во-первых, копирую свою dll в папку components, запускаю regxpcom.exe - никакого результата и никаких сообщений об ошибках. Файлы xpti.dat и compreg.dat не появляются. Вопрос: как зарегистрировать XPCOM компонент в виде одной dll?

Во-вторых, никакой активности моего компонента в Firefox я тоже не заметил, как зделать чтобы Firefox вызывал методы nsIURIContentListener(напрямую, быз всяких JavaScript'ов)? Здесь http://developer.mozilla.org/en/docs/Mo … ow_do_I... написано: Implement the nsIURIContentListener interface, and register it with the appropriate web browser object via the nsIWebBrowser::parentURIContentListener attribute. Как реализовывать методы nsIURIContentListener(сейчас они просто возвращают NS_ERROR_NOT_IMPLEMENTED)? И в каком месте (методе) необходимо зарегистрировать мой nsIURIContentListener через parentURIContentListener? Какие методы вызываются при инициализации XPCOM компонента(типа SetSite в IE), кроме всяких NSGetModule, AddRef... ? Наверное, регистрировать nsIURIContentListener надо в них?

Отсутствует

 

№205-02-2007 18:17:00

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 2.0
Веб-сайт

Re: Несколько вопросов по XPCOM расширению для FF

Во-первых, копирую свою dll в папку components

Кажется, рядом с *.dll должен быть скомпилированный в *.xpt файл описания интерфейса.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№305-02-2007 18:40:42

semav
Участник
 
Группа: Members
Зарегистрирован: 05-02-2007
Сообщений: 2
UA: IE 7.0

Re: Несколько вопросов по XPCOM расширению для FF

На самом деле выше описанные проблемы я уже решил. Там я что-то не правильно делал. Теперь появилась другая - как, имея интерфейс nsIComponentManager, получить nsIWebBrowser?

Отсутствует

 

№429-04-2007 13:14:00

Luciefer
Участник
 
Группа: Members
Зарегистрирован: 19-02-2007
Сообщений: 6
UA: Opera 9.0

Re: Несколько вопросов по XPCOM расширению для FF

Во-первых, копирую свою dll в папку components, запускаю regxpcom.exe - никакого результата и никаких сообщений об ошибках. Файлы xpti.dat и compreg.dat не появляются. Вопрос: как зарегистрировать XPCOM компонент в виде одной dll?

Такая же проблема, не могу зарегистрировать файл. В xpti.dat информация появлется, в compreg.dat нет
regxpcom запускаю так

regxpcom.exe -x "C:\program files\mozilla firefox\components"

Но программа ничего не выводит при этом.

если запускаю с параметром -а, выводит оишбку

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]