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

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№102-02-2006 16:45:22

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Затребование компонентов XPCOM из веток Network, Mail ...

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

var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance();
if (aFile) aFile.QueryInterface(Components.interfaces.nsILocalFile);

Однако ряд компонентов отказываются быть затребованными (из веток Network, Mail и т.д)

Почему?

Отсутствует

 

№202-02-2006 17:12:12

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

...и ни строчки о ПО...

Отсутствует

 

№302-02-2006 17:22:26

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

А что говорить, то...

Windows XP, Firefox 1.5. (XUL + Javascript)

Отсутствует

 

№403-02-2006 07:36:45

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Ну и откуда в Firefox

Celdox пишет

Однако ряд компонентов отказываются быть затребованными (из веток Network, Mail и т.д)

почта?

Отсутствует

 

№503-02-2006 09:31:33

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

:) в том числе и почта. Но все же не только, и далеко не только.

Ну, а из почты вот эти господа:
    * @mozilla.org/messenger/popservice;1
    * @mozilla.org/messenger/protocol/info;1?type=pop3
    * @mozilla.org/network/protocol;1?name=pop

правда странно.
(Я вызываю getService(); для них.)

А насчет почты в Firefox. Это же XPCOM. Значит при установке Firefox компоненты XPCOM устанавливаются не полностью? (А Thunderbird стоит, он то нужные библиотеки должен ставить?)

Отредактировано Celdox (03-02-2006 09:36:40)

Отсутствует

 

№603-02-2006 09:43:20

JustSlon
Участник
 
Группа: Members
Зарегистрирован: 31-01-2006
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Посмотрите в профиле или в директории firefox'а файл compreg.dat - там прописаны все компоненты.. Попробуйте поискать. Кстати, в моём нет (Firefox 1.5, Xulrunner 1.8). ;)


[Смерть Ломом В Ухо] [Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20051219 Firefox/1.0.7]

Отсутствует

 

№703-02-2006 10:00:14

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Celdox пишет

@mozilla.org/messenger/popservice;1, @mozilla.org/messenger/protocol/info;1?type=pop3, @mozilla.org/network/protocol;1?name=pop

Всё это относится к почте, в Fx не устанавливаются эти компоненты, т.к. они там не нужны.

См., как уже сказали, compreg.dat или:

Выделить код

Код:

var dumpCSAndCI = " === Components.interfaces === \r\n\r\n";
for (prop in Components.interfaces)
  dumpCSAndCI += prop + "\r\n";
dumpCSAndCI += "\r\n\r\n === Components.classes === \r\n\r\n";
for (prop in Components.classes)
  dumpCSAndCI += prop + "\r\n";
Components.classes["@mozilla.org/consoleservice;1"]
          .getService(Components.interfaces.nsIConsoleService)
          .logStringMessage(dumpCSAndCI);
Celdox пишет

А Thunderbird стоит, он то нужные библиотеки должен ставить?

Вот из TB их и можно вызвать, а наличие установленного TB не влияет на наличие/отсутствие его компонент в Fx.

Отсутствует

 

№803-02-2006 10:12:58

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

JustSlon и Mash, спасибо.

В профилях обеих програм в файлах compreg.dat в списках, в частности, почтовых компонентов у Firefox зарегистрированными (по умолчанию?) не оказалось.

Но вопрос в том
как вызвать нужные компоненты из Firefox?
или как их сюда установить либо зарегистрировать?

(ведь и то и то Mozilla).

Отсутствует

 

№903-02-2006 10:25:07

JustSlon
Участник
 
Группа: Members
Зарегистрирован: 31-01-2006
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Вообще, в сырцах фаерфокса 1.5 есть "mailnews/". Там лежат сырцы компонент - видимо собрать их можно.. Только как - я тебе не скажу, т.к. сам не знаю.


[Смерть Ломом В Ухо] [Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20051219 Firefox/1.0.7]

Отсутствует

 

№1003-02-2006 10:51:28

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Не уж то через ...

Надо найти способ без сырцов.
:|

Отсутствует

 

№1103-02-2006 10:56:59

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Mash пишет
Celdox пишет

@mozilla.org/messenger/popservice;1, @mozilla.org/messenger/protocol/info;1?type=pop3, @mozilla.org/network/protocol;1?name=pop

Всё это относится к почте, в Fx не устанавливаются эти компоненты, т.к. они там не нужны.

Celdox пишет

А Thunderbird стоит, он то нужные библиотеки должен ставить?

Вот из TB их и можно вызвать, а наличие установленного TB не влияет на наличие/отсутствие его компонент в Fx.

Просто их отсутствие, вернее невозможность в данный момент вызова, в Firefox портит всю малину.

Отсутствует

 

№1203-02-2006 11:53:26

INFOMAN
Телепаты в отпуске
 
Группа: Extensions
Откуда: Кишинев
Зарегистрирован: 31-12-2005
Сообщений: 1099
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

А на фига вообще из Лиса вызывать почтовые компоненты?


Закрой кран
Включи свет ©
Fire! Kill IE is your desire | NULL | NULL

Отсутствует

 

№1303-02-2006 12:17:36

Celdox
Участник
 
Группа: Members
Зарегистрирован: 27-12-2005
Сообщений: 10

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Я вот щас тоже об этом думаю.

В принципе в ТЗ проекта эти компоненты вызывать надо. Помимо других...
Но вот теперь возник вопрос на базе какой программы Firefox или TB делать
данную задачу.

Но общий вопрос, а возможно ли поставить в FF (Fx) любой компонент из списка XPCOM?

без сырцов,
с сырцами?

Отсутствует

 

№1403-02-2006 12:49:21

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Celdox пишет

Но вот теперь возник вопрос на базе какой программы Firefox или TB делать данную задачу.

Сделать на базе Mozilla/Seamonkey? Не проще?

Celdox пишет

Но общий вопрос, а возможно ли поставить в FF (Fx) любой компонент из списка XPCOM?

Вполне возможно. С сырцами, собирать самому. Правда, не уверен, что это заработает; да и одна компонента потянет за собой вторую, потом вторая потянет...

Mozilla, так проще.

Отсутствует

 

№1503-02-2006 12:50:28

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

P.S. Хотя... Смотря что за программа. Если там упор делается на Mail и все необходимые вещи есть в TB, то можно и на его базе.

Отсутствует

 

№1603-02-2006 12:54:52

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Mash пишет

Вполне возможно. С сырцами, собирать самому.

Можно попробовать выдрать из SM/Mozilla какой-нибудь уже готовый компонент (DLL), зарегистировать его (скопировав в каталог "firefox/components" и потерев "compreg.dat" (м.б. ещё и "xpti.dat", не помню) в каталоге профиля), а потом посмотреть его работоспособность... Получится-нет -- не знаю, не пробовал никогда.

Отсутствует

 

№1703-02-2006 14:04:57

Mash
Участник
 
Группа: Extensions
Зарегистрирован: 09-04-2005
Сообщений: 620
Веб-сайт

Re: Затребование компонентов XPCOM из веток Network, Mail ...

Хотя пардон, compreg.dat и xpti.dat нужно чистить в каталоге "components" самого Fx, если копировать DLL в firefox/components.

Отсутствует

 

Board footer

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