Страницы: 1
3 подряд сообщение пишу сам себе, наверняка кому-нибудь пригодится:
По исходникам из примера http://www.codeproject.com/KB/library/firefox_component.aspx?msg=2345250
Длл собирается с бубнами описание проблем тут http://forums.mozillazine.org/viewtopic.php?f=19&t=1096635&p=5811925
Программисты-разработчики расширений для ФФ. У кого-нибудь работает подобная вешь?
http://www.codeproject.com/KB/library/firefox_component.aspx?msg=2345250
Т.е. кто-нибудь успешно передавал window из скрипта в xpcom.
Убиваюсь головой, не получается передать указатель nsIDOMWindow.
Работает такая функция
NS_IMETHODIMP Demo::Func1(const PRUnichar *inP, PRUnichar **outP NS_OUTPARAM, PRInt32 *_retval NS_OUTPARAM)
Но если добавляю nsIDOMWindow *domWindow параметр, то и все остальеные функции в этой длл перестают работать. Фаерфокс отправляет отчет об ошибке.
NS_IMETHODIMP Demo::Func1(nsIDOMWindow *domWindow, const PRUnichar *inP, PRUnichar **outP NS_OUTPARAM, PRInt32 *_retval NS_OUTPARAM)
Вот так вот работает
idl файл
#include "nsISupports.idl" #include "nsrootidl.idl" [scriptable, uuid(CB934085-D019-47d5-A6F0-623885873281)] interface IDemo : nsISupports { long func2(in wstring inP, out wstring outP); };
Вот так вот не работает
idl файл
#include "nsISupports.idl"
#i
Пишу плагин для фф.
Нашел способ смены стиля для странички, код джаваскрипт:
var sss = Components.classes["@mozilla.org/content/style-sheet-service;1"] .getService(Components.interfaces.nsIStyleSheetService); var ios = Components.classes["@mozilla.org/network/io-service;1"] .getService(Components.interfaces.nsIIOService); var u = ios.newURI("chrome://myext/content/myext.css", null, null); if(sss.sheetRegistered(u, sss.USER_SHEET)) sss.unregisterSheet(u, sss.USER_SHEET);
Хочу то же самое написать на С++ и оформить в качестве длл. Может кто-нибудь поможет с примерчиком, как вызвать интерфейс Components.interfaces.nsIStyleSheetService из С++.
Вижу по заголовочным файлам в sdk xulrunner, что возможностей море, но как ими воспользоваться не знаю.
Например есть интерфейс
nsIDOMCSSStyleSheet interface void deleteRule(in unsigned long index) unsigned long insertRule(in DOMString rule, in unsigned long index)
как бы мож
…Страницы: 1