Инсталирайте разширение Opera от системния регистър

Разработих разширение за Opera. Работи добре. Но трябва да инсталирам разширението си в системния регистър на Windows или файловата система на Windows. Как мога да направя това?


person propostaff    schedule 10.09.2012    source източник


Отговори (1)


ЗАБЕЛЕЖКА: ТОЗИ ВЪПРОС Е СВЪРЗАН С OPERA 12
Opera 12 използва различна архитектура на разширение от следните версии на Opera!

Разширенията на Opera не се инсталират чрез системния регистър.

Ще намерите XML-файл, наречен widget.dat в папката:

C:\Users\%Username%\AppData\Local\Opera\Opera\widgets

Всяка джаджа има запис там. Мисля, че сами ще разберете синтаксиса, той е доста разбиращ се, ако имате инсталирани някои джаджи.


РЕДАКТИРАНЕ: Току-що разбрах, че добавянето на нов запис към widget.dat ще инсталира разширението към Opera, но то ще бъде деактивирано, тъй като не е инициализирано. Това обикновено се случва чрез двигателя на javascript/разширението по време на изпълнение.

За да активирате скрипта ръчно, трябва да има prefs.dat в папката wuid-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, отбелязана в widget.dat, съдържаща поне следната структура:

<?xml version="1.0" encoding="utf-8"?>
<preferences>
  <section id="ui">
    <value id="default-prefs-applied" xml:space="preserve">1</value>
  </section>
</preferences>

В допълнение към това може да се наложи ръчно да инициализирате настройките на притурката в папката pstorage. Настройките се съхраняват като base64-кодирани utf-16 двойки низове ключ-стойност. И така, тази кодирана структура:

<ws>
  <e>
    <k>YQBsAGUAcgB0AF8AYgB1AGIAYgBsAGUAXwB0AGkAbQBlAG8AdQB0AA==</k>
    <v>IgAxADUAIgA=</v>
  </e>
<ws>

Чете се като:

<widgetsettings>
  <entry>
    <key>alert_bubble_timeout</key>
    <value>"15"</value>
  </entry>
<widgetsettings>

(Имената на таговете се интерпретират свободно ;) Намерих base64 en/декодер, способен да обработва utf-16 тук


PS: Opera ще инсталира уиджети, като щракнете двукратно върху тях. Така че можете също да изпълните Opera с пътя на разширенията в командния ред. Тогава Opera ще направи всичко вместо вас.

C:\Program Files\Opera\opera.exe C:\Path\To\Extension.oex
person Nippey    schedule 10.09.2012
comment
Инсталирам разширение за много браузъри с моята десктоп програма. Как мога да инсталирам разширение в безшумен режим? - person propostaff; 10.09.2012
comment
Редактирах отговора си по-горе, винаги се радвам на гласове, ако това ви помогне;) - person Nippey; 10.09.2012
comment
Много благодаря! Полезно е за мен, но имам малка репутация, за да гласувам за вашия въпрос =(( - person propostaff; 10.09.2012
comment
Ако можете, кажете ми къде намерихте тази информация, прерових всичко, включително форумите на Opera и не намерих нищо = ( - person propostaff; 10.09.2012
comment
Току-що го извлякох от структурата на папките, всичко направено от мен =) За съжаление (поне за нас) тези неща не са документирани. - person Nippey; 10.09.2012