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

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№1360112-08-2019 20:37:40

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 68.0

Re: Custom Buttons

mokujin
Хороший ход, а как с этим быть?
d.bat :

скрытый текст
nircmd exec hide "D:\iceweasel\app\memreduct\memreduct.exe"
nircmd.exe  wait 600
nircmd.exe sendkeypress  Insert

И этим d.vbs
скрытый текст
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("D:\iceweasel\app\nir\d.bat", 0, False)

Опять привязка к диску ....?

Отсутствует

 

№1360212-08-2019 21:50:37

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 497
UA: Firefox 60.0

Re: Custom Buttons

у тебя какая-то очень-очень дураццкая скриптовая мешанина; запускается vbs, который запускает bat в котором выполняется nircmd.exe - где опять вызывается vbs в котором вызывается bat  :cry:  что это?? зачем!?

Напиши нормальный батнег с нужными командами для memreduct.exe, nircmd.exe... запихни его в кнопку в Help и запускай его из Code

Выделить код

Код:

// Записать батнег из вкладки Справка в файл и запустить
   var prof = Services.dirsvc.get('ProfD', Ci.nsIFile);
       prof.append("memreduct.cmd");
           custombuttonsUtils.writeFile( prof.path, convertFromUnicode("866", self.Help) );
       prof.launch();

пример наглядный как это может быть, посмотри здесь [CB]Архив профиля (backup)
В твоем случае как-то так, часть батнега:

скрытый текст

Выделить код

Код:

@echo off
rem скрипт лежит в профиле. Папка приложений, например \app\ лежит ниже
chcp 866
cd /d %~dp0
rem folder в профиле где лежат другие проги. например \app\
rem Путь откуда можно начать танцевать со всеми другими путями
rem nircmdc.exe лежит в корне этой папки. другие вложены в свои под-папки с именами
set app_iw=%~dp0app

pushd "%app_iw%"
nircmd exec hide "%app_iw%\memreduct\memreduct.exe"
nircmd.exe  wait 600
nircmd.exe sendkeypress  Insert
pause 
exit


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№1360312-08-2019 22:00:33

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 68.0

Re: Custom Buttons

mokujin
Спасибо, но это не для меня...Ни фига не въезжаю. С эти все понятно

скрытый текст
let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);  // нашел путь к профилю
    prof.initWithPath("prof.path + "\\nir\\d.vbs");  // в профиле лежит папка nir где лежить нужный файлег
    prof.launch();

Дальше, мозг взрывается...Работает на диске и черт с ним...

Отсутствует

 

№1360412-08-2019 22:55:21

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 497
UA: Firefox 60.0

Re: Custom Buttons

solombala
глянул что это за прога... в общем вот рабочий батнег (upd. чуть поправил батнег на случай уже запущенной проги.)

скрытый текст

Выделить код

Код:

@echo off
chcp 866
cd /d %~dp0
tasklist | find /i "memreduct.exe" 1>nul
goto :%errorlevel%
exit

:0
nircmdc.exe sendkeypress Ctrl+F1
exit


:1
if defined "ProgramFiles(x86)" (
  set memRPath=%~dp0memreduct\64\memreduct.exe
      ) Else (
  set memRPath=%~dp0memreduct\32\memreduct.exe
 )

nircmdc.exe exec hide "%memRPath%"
nircmdc.exe wait 1000
nircmdc.exe sendkeypress Ctrl+F1
exit


Вот картинко, где и как лежат файлы
226dbf1299189954.jpg
Запускай батнег этой кнопкой:
скрытый текст

Выделить код

Код:

let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);  // нашел путь к профилю
    prof.initWithPath("prof.path + "\\app\\memreduct.cmd");  // в профиле лежит папка app где лежит nirCmdc.exe и memreduct.cmd
    prof.launch();

Отредактировано mokujin (12-08-2019 23:14:39)


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№1360512-08-2019 22:59:41

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2201
UA: Firefox 52.0

Re: Custom Buttons

solombala пишет

Этот код в кн. "Очистка памяти" и как ?  Как без привязки к диску?

Ладно, порылся в сборке немного. Расскажу как наблюдалось.

скрытый текст
Во-первых, пришлось убрать lockPref("browser.launcherProcess.enabled", false);
и выставить false в about:config вручную, иначе — deelevate и trayupdate.exe не работает.
Но nircmd.exe killprocess всё равно не работает, воспользовался taskkill.exe

Во-вторых, пришлось заменить memreduct.exe, этот был недоволен

Mem Reduct пишет

Warning!

You are attempting to run 32-bit version of Mem Reduct on 64-bit Windows.
Please run the 64-bit version of Mem Reduct instead.

А так, вроде, кое-как работает

Выделить код

Код:

this.onclick = async e => {
    if (e.button) return e.button == 1 || e.ctrlKey || event.shiftKey || Services.prefs.setBoolPref(
        "browser.zoom.full", !Services.prefs.getBoolPref("browser.zoom.full")
    );
    var wait = ms => new Promise(resolve => setTimeout(resolve, ms));

    var launch = (file, hidden, ...args) => {
        var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
        process.init(file);
        if (hidden) process.startHidden = true;
        process.runw(false, args, args.length);
    }
    var sys = Services.dirsvc.get("SysD", Ci.nsIFile);
    var fox = Services.dirsvc.get("GreD", Ci.nsIFile);

    var getFile = (...args) => {
        var file = args.shift().clone();
        args.forEach(file.append);
        return file;
    }
    var mem  = getFile(fox, "memreduct", "memreduct.exe");
    var nir  = getFile(fox, "nir", "nircmd.exe");
    var tray = getFile(fox, "nir", "trayupdate.exe");
    var tskk = getFile(sys, "taskkill.exe");

    mem.launch();
    await wait(1000);

    launch(nir, false, "sendkeypress", "insert");
    await wait(2000);

    launch(tskk, true, "/F", "/IM", "memreduct.exe");
    await wait(2000);

    tray.launch();
}

Отсутствует

 

№1360612-08-2019 23:20:55

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 68.0

Re: Custom Buttons

Нет. я не понимаю все-равно. Это понятно , папки Nir и memreduct кидаю в профиль и пробую это

скрытый текст
let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);  // нашел путь к профилю
    prof.initWithPath("prof.path + "\\nir\\d.vbs");  // в профиле лежит папка nir где лежить нужный файлег
    prof.launch();

Дальше надо уработать два батника , да или нет , все...
скрытый текст
nircmd exec hide "D:\iceweasel\app\memreduct\memreduct.exe"
nircmd.exe  wait 600
nircmd.exe sendkeypress  Insert

И
скрытый текст
nircmd.exe  wait 2000
nircmd.exe  killprocess  memreduct.exe
start "" "D:\iceweasel\app\nir\trayupdate.exe"

Ну, не сборку же выкладывать, оно вам надо? Там этих батников немерено ....
Впрочем,  FF66x64 https://www.upload.ee/files/10347653/core.rar.html

Отредактировано solombala (13-08-2019 00:06:11)

Отсутствует

 

№1360713-08-2019 00:45:48

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 497
UA: Firefox 60.0

Re: Custom Buttons

solombala

скрытый текст
если это ты делаешь, то должен сказать что сама концепция у тебя неверная. Всё разбросано хз где.
Вот у мя, тоже есть своя сборка PaleMoon. Все работает с флешки на любой ОС. Можно скопировать куда угодно, тоже будет работать.
А дело в том, что всё что может понадобиться, лежит в %профиле%\SOFT_PM\ Я давал тебе фотку со списком из этой папки.

Все косольные качалки - лежат в одной папке wget. там скрипты для них; curl, wget, youtube-dl, mpv.exe, sort.exe и другие... Поэтому, не проблем с путями:
запустив скрипт из CB(получением пути к профилю, как выше показал) дальше орудуют скрипты, тоже берущие путь относительно себя( %~dp0 )
Сделай в профиле папку основную. В неё уже кидай все другие программы\папки. И тебе будет всегда известно где ты и куда надо переходить.

Любая программа, любой скрипт у мя запускается с одного и того же:

Выделить код

Код:

let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);

нашел путь к профилю , а в профиле лежит папка SOFT_PM где все остальное лежит. И добавляя нужную часть пути, запускаешь что нужно.
А у тебя, разброс\шатание и даже за пределами рабочей папки бравзера, лежит yotube-dl   :rolleyes:

Вот пример запуска из конт.меню ссылки(кнопка-меню) PotPlayer

Выделить код

Код:

// ----------------------- =  PotPlayer  = -----------------------------------------
 this.potplayOpen = function potplayOpen(){
       let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);
       let process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
     prof.initWithPath(prof.path + "\\SOFT_PM\\Potplayer\\PotPlayerMini.exe");
     process.init(prof);
     process.run(false, [gContextMenu.linkURL], 1);
  };

// и тут же , такой же запуск скрипта wget

Выделить код

Код:

// ----------------------- =  WGET  = -------------------------------------
 this.wgeturl = function wgeturl(){
      let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);
      let process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
       let url = ('"' + gContextMenu.linkURL + '"');
       let ref = ('"' + getCurUrl() + '"');
       let title = getCurTitle();
      prof.initWithPath(prof.path + "\\SOFT_PM\\wget\\wgetfile.cmd");
      process.init(prof);
      process.run(false, [url, title, ref], 3);
      setTimeout(()=> gBrowser.focus(), 1500);
   };

всегда знаешь где ты находишься, ибо есть точка отсчёта %профиль%\SOFT_PM\. Сделай и у себя так, будет и проще и понятней.


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№1360813-08-2019 02:52:49

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 220
UA: Firefox 68.0

Re: Custom Buttons

Здравствуйте, как можно сделать под портабл путь? запутался в filе... спасибо заранее.

Открыть в другом браузере

Выделить код

Код:

var path="C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe";
var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile);
var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
var uri=gBrowser.currentURI.spec;
var uri=/.рф/.test(uri) ? Services.io.newURI(uri,null,null).asciiSpec:uri;  
file.initWithPath(path);
!file.exists()&&custombuttons.alertSlide(self.label,"The file doesn't exist");
process.init(file);
process.run(false,[uri],1);


mokujin интересный синтаксис) нестандартный, зато более понятный.
- - - - - - - - - - - - - -
Спасибо за пример сверху, но посидел норм так...метод проб)
let - это для линукса, как я понял.
upd

Выделить код

Код:

function openBrave(){var prof=Services.dirsvc.get('ProfD',Ci.nsIFile);
var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
prof.initWithPath(prof.path+"\\..\\..\\gBrave\\brave-portable.exe");
!prof.exists()&&custombuttons.alertSlide(self.label,"The file doesn't exist");
var uri=gBrowser.currentURI.spec;
var uri=/.рф/.test(uri)?Services.io.newURI(uri,null,null).asciiSpec:uri;
process.init(prof);process.run(false,[uri],1);};
Выделить код

Код:

var uri=gBrowser.currentURI.spec;
var uri=/.рф/.test(uri)?Services.io.newURI(uri,null,null).asciiSpec:uri;
process.run(false,[uri],1);};
вопрос тут, он берет с 2 или с одного параметра? может одна из них лишняя?
//=======================================
var file=Services.dirsvc.get("ProfD",Ci.nsIFile);file.append("SQL.vbs");
в этом коде можно также с путями играться? или тупо профиль?

Отредактировано func4ptch4 (13-08-2019 05:32:24)

Отсутствует

 

№1360913-08-2019 05:21:15

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 220
UA: Firefox 68.0

Re: Custom Buttons

Можете проверить, правильно все? код сам работает через HotKey.
Меня смущает две строки снизу, один с кода сверху, другой со старого кода.

скрытый текст

Выделить код

Код:

var prof=Services.dirsvc.get('ProfD',Ci.nsIFile);
var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
prof.initWithPath(prof.path+"\\%Soft\\_QTranslate 6.7.2.exe");prof.launch();
//process.init(prof);process.run(false,[uri],1);};
////var link=gClipboard.read();var args=[link];file.launch();


И вопрос за что отвечает var process? если его убрать с кода тоже работает.
Зачем такой большой код, если и с 2строк все пашет? понимаю что зависит от предназначения кода, но в общем.

Отредактировано func4ptch4 (13-08-2019 05:27:35)

Отсутствует

 

№1361013-08-2019 10:25:36

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 68.0

Re: Custom Buttons

Так, а как это скрытно запустить? Vbs = требует полный путь или этот батник сразу переделать в Vbs ?

скрытый текст
nircmd exec hide "..\%profile%\memreduct\memreduct.exe"
nircmd.exe  wait 700
nircmd.exe sendkeypress  Insert

Или из СВ скрыть баты ?
скрытый текст
var file = Services.dirsvc.get('ProfD', Ci.nsIFile);
         file.initWithPath("D:\\iceweasel\\app\\nir\\d.bat");
         file.launch();
         file.initWithPath("D:\\iceweasel\\app\\nir\\m.bat");
         file.launch();

а это не подходит ,падает кн. память
скрытый текст
let prof = Services.dirsvc.get('ProfD', Ci.nsIFile);  // нашел путь к профилю
    prof.initWithPath("prof.path + "\\nir\\d.vbs");  // в профиле лежит папка nir где лежить нужный файлег
    prof.launch();

Кто-нибудь скажет как скрыть батник без vbs ? или с кодом того же CB или с Nircmd.exe . Наконец с VBS ? так он полный путь требует...

Отредактировано solombala (13-08-2019 13:33:53)

Отсутствует

 

№1361113-08-2019 14:05:08

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 1194
UA: Firefox 68.0

Re: Custom Buttons

solombala
Так вроде при запуске nircmd exec hide "батник" ничего не видно.

Отсутствует

 

№1361213-08-2019 14:44:22

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 66.0

Re: Custom Buttons

xrun1
Все равно не то....мелькает. и с этим тоже nircmd.exe win hide title "%ComSpec%"
Да хотя бы свернуть окно консоли , мелькает зараза....Все, сборка полностью портабл...
Все . Вопросов нет. Хочешь сделать хорошо - сделай сам!

Отредактировано solombala (13-08-2019 19:20:32)

Отсутствует

 

№1361313-08-2019 18:58:59

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 220
UA: Firefox 66.0

Re: Custom Buttons

Не понял, так как запустить к примеру это без появления окна? без .vbs

скрытый текст

Выделить код

Код:

var closer={observe:function(subject,topic,data){if(data=="shutdown"){
var prof=Services.dirsvc.get('ProfD',Ci.nsIFile);prof.append("SQL.bat");prof.launch();}}};
Services.obs.addObserver(closer,"quit-application",false);

да и кажется код кривоват, хотя я походу в игноре лад..

Отредактировано func4ptch4 (13-08-2019 19:00:21)

Отсутствует

 

№1361413-08-2019 19:15:19

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 66.0

Re: Custom Buttons

func4ptch4

скрытый текст
var closer = {
    observe: function(subject, topic, data) {
       if ( data == "shutdown" ){
            var file = Services.dirsvc.get('ProfD', Ci.nsIFile);
         
file.initWithPath(file.path + "\\sqlite.bat");
file.launch();

}
}
};
Services.obs.addObserver(closer, "quit-application", false);


Так понял,  это  при выходе  профиль  обжать?  Заделаешь VBS  и портабла не будет
А все-таки собрал портабл пока на 66 и без vbs - и консолей не видно...!

Отредактировано solombala (13-08-2019 19:19:17)

Отсутствует

 

№1361513-08-2019 22:50:23

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 497
UA: Firefox 60.0

Re: Custom Buttons

solombala вот тебе готовый комплект ;-)  Запускать надо memreduct-start.vbs
MemReduct pack

Теперь понял, зачем там vbs. оказуеццо, это такой простой способ скрыть консоль без сторонних утилит, скрыть окно.
вот это:

Выделить код

Код:

Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("memreduct-action.cmd", 0, False)

заводит пакетный файл без окна. Именно вторая строчка это самое и делает. Т.е. не просто WshShell.Run(что то там...) а с этим вот RetCode и параметрами... возврата, чтоле, хз.
В любом случае, открытие(для меня) поелзное, не знал.

func4ptch4 пишет

let - это для линукса, как я понял.

нет. let это та же var , только с защитой(или наоборот -  с проблемами), работает только внутри { .....  }  здесь, в таком мелком коде, это не важно что исп-ть.

зы. solombala почитай про относительные и абсолютные путя\и , вопросы отпадут 1 (http)  и 2(Windows)

Добавлено 13-08-2019 23:00:49

func4ptch4 пишет

var file=Services.dirsvc.get("ProfD",Ci.nsIFile);
file.append("SQL.vbs");
в этом коде можно также с путями играться? или тупо профиль?

Это другой способ составлять путь. Просто более ранний и объемный. За раз , можно добавить только один уровень  append == "добавить".  ЕЯПП то используется обычно для проверки есть ли файл №3  или для создания файла по известному пути с нужным именем №9
Для запуска программ, можно... но проще\удобней делать через prof.path +"\\часть пути к программе\\123.exe

Отредактировано mokujin (13-08-2019 23:00:49)


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№1361613-08-2019 23:32:06

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 220
UA: Firefox 68.0

Re: Custom Buttons

drage

sql.vbs

Выделить код

Код:

Set WshShell=CreateObject("WScript.Shell") 
RetCode=WshShell.Run("chrome\user_chrome_files\_Local\Updates\sqlite[Fix].bat",0,false)


Вроде же портабл? просто хотел обойтись без vbs, и чтобы батник выходил без окна.
А ты как сделал?

mokujin, спасибо кстати насчет этого кода, так запускаю.

hotk ctrl+q

Выделить код

Код:

var prof=Services.dirsvc.get('ProfD',Ci.nsIFile);
prof.initWithPath(prof.path+"\\%Soft\\_QTranslate 6.7.2.exe");prof.launch();


А этот код как я понял, ищет процесс и привязывает к нему параметры запуска? то есть при хоткее не обязателен.
Самый нижний код вообще лишний.
скрытый текст

Выделить код

Код:

var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
process.init(prof);process.run(false,[uri],1);};



sqlite(Fix).bat

Выделить код

Код:

@echo off
%~d0
cd "%~dp0"
title Оптимизация/сжатие баз данных Portable Firefox
:: :try
:: cls
:: tasklist | find /i "firefox.exe" >nul
:: if not errorlevel 1 (echo. && echo. && echo. && echo          Вы должны закрыть Firefox для выполнения оптимизации^! && >nul ping -n 2 127.0.0.1 && goto try)
:: echo.
:: echo.
:: echo.
echo                 Пожалуйста подождите, идет оптимизация ...
for /r %f% %%i in (*.sqlite) do @echo VACUUM; | sqlite3 %%i

:: :: @echo off
:: :: for %%i in (*.sqlite) do @echo VACUUM; | sqlite3 %%i
:: http://forum.ru-board.com/topic.cgi?forum=2&topic=4283&start=760#4
:: Для сжатия .sqlite`s в подпапках, перечисляем их в верхней строке, в скобках ( ) через пробел, следующая строка как пример
:: for %%i in (extension-data\ublock0.sqlite simplemail\*.sqlite *.sqlite) do @echo VACUUM; | sqlite3 %%i

:: Двойное двоеточие закомментирует строку
:: Некоторые строки уже закомментированы
:: Двойная точка + слэш, в начали пути, заставит искать объект в каталоге на уровень выше текущего
:: Пути с пробелами заключаются в кавычки
:: Пробелов в конце строк быть не должно

:: /f Принудительное удаление "read only" файлов
:: /q Отключение подтверждения при удалении
:: /s Удаление папки вместе с содержимым

:: Мусор профиля
SET f="..\..\..\..\"
TIMEOUT 6
del /f /q %f%\*.db
del /f /q %f%\*.txt
del /f /q %f%\times.json
del /f /q %f%\blocklist.xml
::::if exist safebrowsing rd /s /q safebrowsing
::::::::::::::
for /d %%i in (%f%\storage\default\http* %f%\storage\*m*) do rd /s /q %%i
rd /s /q %f%\features
rd /s /q %f%\custombuttons\backup
rd /s /q %f%\AppData
rd /s /q %f%\LocalAppData
::::::::::::::::::::::::::::::::::::::::
:: Ежедневные копии закладок
rd /s /q %f%\bookmarkbackups
:: Сохраненные сессии текущая и старые :: :: if exist sessionstore.js del /f /q sessionstore.js
:: rd /s /q %f%\sessionstore-backups
:: Настройки масштаба сайтов
del /f /q %f%\content-prefs.sqlite

:: Файлы дистрибутива :::::::::::::::::::::::::::::::::::::::::::::::::::
::| SET FF="..\..\..\..\Firefox\"
:: Предустановленные словари, если есть свои то эти не нужны
::| rd /s /q %FF%\dictionaries

::| rd /s /q %FF%\browser\features
::| rd /s /q %FF%\browser\VisualElements
::| del /f /q %FF%\browser\blocklist.xml
::| del /f /q %FF%\browser\chrome.manifest
::| del /f /q %FF%\browser\crashreporter-override.ini
::| rd /s /q %FF%\fonts
::| rd /s /q %FF%\gmp-clearkey
::| rd /s /q %FF%\uninstall

::| del /f /q %FF%\Accessible*
::| del /f /q %FF%\api-ms-win*
::| del /f /q %FF%\crashreporter*
::| del /f /q %FF%\maintenanceservice*
::| del /f /q %FF%\plugin*
::| del /f /q %FF%\update*
::| del /f /q %FF%\*.chk
::| del /f /q %FF%\*.sig
::| del /f /q %FF%\*140.dll
::| del /f /q %FF%\*er*
::| del /f /q %FF%\*at*.ini
::| del /f /q %FF%\*Manifest*

::| del /f /q %FF%\d3dcompiler_47.dll
::| del /f /q %FF%\ucrtbase.dll
::| del /f /q %FF%\removed-files
::| del /f /q %FF%\precomplete
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::[EXAMPLE]:: desktop/*.jpg || thumbnails\*.png || buttonsoverlay.xul*.bak
::[EXAMPLE]::
:: @echo off

:: set DATE=%date:~6,4%-%date:~3,2%-%date:~0,2%_%time:~0,2%%time:~3,2%
:: set copy1=".\profile\"
:: set paste1=".\profile_%DATE%\"

:: md "profile_%DATE%\extensions\"
:: md "profile_%DATE%\browser-extension-data\"

:: copy "%copy1%\key4.db" "%paste1%"
:: copy "%copy1%\logins.json" "%paste1%"
:: copy "%copy1%\cookies.sqlite" "%paste1%"
:: copy "%copy1%\formhistory.sqlite" "%paste1%"

:: copy "%copy1%\places.sqlite" "%paste1%"
:: copy "%copy1%\favicons.sqlite" "%paste1%"

:: copy "%copy1%\extensions" "%paste1%\extensions\"
:: xcopy /s /e "%copy1%\browser-extension-data" "%paste1%\browser-extension-data\"

:: del "%paste1%\extensions\jid0-XWJxt5VvCXkKzQK99PhZqAn7Xbg@jetpack.xpi"
:: del "%paste1%\extensions\uBlock0@raymondhill.net.xpi"
:: del "%paste1%\extensions\jid1-KdTtiCj6wxVAFA@jetpack.xpi"
:: del "%paste1%\extensions\{170503FA-3349-4F17-BC86-001888A5C8E2}.xpi"
:: del "%paste1%\extensions\opentabsnexttocurrent@sblask.xpi"
:: del "%paste1%\extensions\advancedlocationbar@veg.by.xpi"
:: del "%paste1%\extensions\@translatenow.xpi"
:: del "%paste1%\extensions\public.proartex@gmail.com.xpi"
:: del "%paste1%\extensions\{dc572301-7619-498c-a57d-39143191b318}.xpi"

:: rd /s /q "%paste1%\browser-extension-data\@translatenow\"
:: rd /s /q "%paste1%\browser-extension-data\{170503FA-3349-4F17-BC86-001888A5C8E2}\"
:: rd /s /q "%paste1%\browser-extension-data\{dc572301-7619-498c-a57d-39143191b318}\"
:: rd /s /q "%paste1%\browser-extension-data\jid1-KdTtiCj6wxVAFA@jetpack\"
:: rd /s /q "%paste1%\browser-extension-data\screenshots@mozilla.org\"
:: rd /s /q "%paste1%\browser-extension-data\uBlock0@raymondhill.net\"
:: rd /s /q "%paste1%\browser-extension-data\webext@tabmixplus.org\"
:: rd /s /q "%paste1%\browser-extension-data\opentabsnexttocurrent@sblask\"
:: for /d %%i in ("%paste1%\*") do rd /q "%%i" 2>nul



REM %appdata%\Mozilla\Firefox\Profiles\

:: for /f "delims=" %%H in ('dir /s /b /ad if exist "%appdata%\Mozilla\Firefox\Profiles\*.default"') do set copy2=%%H
:: for %%i in ("%copy2%.") do set "dir=%%~nxi"

:: set paste2=".\profile_%dir%_%DATE%\"



:: if exist "%copy2%" start "" "%appdata%\Mozilla\Firefox\Profiles\"
:: if exist "%copy2%" start "" "%~dp0" 

:: if exist "%copy2%" md "profile_%dir%_%DATE%\extensions\"
:: if exist "%copy2%" md "profile_%dir%_%DATE%\browser-extension-data\"

:: copy "%copy2%\key4.db" "%paste2%"
:: copy "%copy2%\logins.json" "%paste2%"
:: copy "%copy2%\cookies.sqlite" "%paste2%"
:: copy "%copy2%\formhistory.sqlite" "%paste2%"

:: copy "%copy2%\places.sqlite" "%paste2%"
:: copy "%copy2%\favicons.sqlite" "%paste2%"

:: copy "%copy2%\extensions" "%paste2%\extensions\"
:: xcopy /s /e "%copy2%\browser-extension-data" "%paste2%\browser-extension-data\"

:: del "%paste2%\extensions\jid0-XWJxt5VvCXkKzQK99PhZqAn7Xbg@jetpack.xpi"
:: del "%paste2%\extensions\uBlock0@raymondhill.net.xpi"
:: del "%paste2%\extensions\jid1-KdTtiCj6wxVAFA@jetpack.xpi"
:: del "%paste2%\extensions\{170503FA-3349-4F17-BC86-001888A5C8E2}.xpi"
:: del "%paste2%\extensions\opentabsnexttocurrent@sblask.xpi"
:: del "%paste2%\extensions\advancedlocationbar@veg.by.xpi"
:: del "%paste2%\extensions\@translatenow.xpi"
:: del "%paste2%\extensions\public.proartex@gmail.com.xpi"
:: del "%paste2%\extensions\{dc572301-7619-498c-a57d-39143191b318}.xpi"

:: rd /s /q "%paste2%\browser-extension-data\@translatenow\"
:: rd /s /q "%paste2%\browser-extension-data\{170503FA-3349-4F17-BC86-001888A5C8E2}\"
:: rd /s /q "%paste2%\browser-extension-data\{dc572301-7619-498c-a57d-39143191b318}\"
:: rd /s /q "%paste2%\browser-extension-data\jid1-KdTtiCj6wxVAFA@jetpack\"
:: rd /s /q "%paste2%\browser-extension-data\screenshots@mozilla.org\"
:: rd /s /q "%paste2%\browser-extension-data\uBlock0@raymondhill.net\"
:: rd /s /q "%paste2%\browser-extension-data\webext@tabmixplus.org\"
:: rd /s /q "%paste2%\browser-extension-data\opentabsnexttocurrent@sblask\"


:: for /d %%i in ("%paste2%\*") do rd /q "%%i" 2>nul
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


:: Помимо прочего - сброс настроек пользовательских скриптов
:: if exist webappsstore.sqlite del /f /q webappsstore.sqlite
:: if exist webappsstore.sqlite-* del /f /q webappsstore.sqlite-*

:: Вроде история RSS-ленты :: :: if exist webapps rd /s /q webapps
:: Хранит версию и пути Firefox :: :: if exist compatibility.ini del /f /q compatibility.ini
:: Неверные или не в той кодировке параметры из файла prefs.js :: :: if exist Invalidprefs.js del /f /q Invalidprefs.js
:: Старые about:config, создаются при обновлении версии :: :: if exist prefs-*.js del /f /q prefs-*.js



:: Дальнейшие строки просто для информации :: Изредка обновляемая страница о файлах и папках FF :: Сод.ошибки :: https://mozilla-russia.org/products/firefox/profiles.html
:: extensions + storage\default --- Addons + Настройки дополнений
:: places.sqlite + favicons.sqlite --- закладки и журнал посещений ([Bookmarks+Icons!])
:: [?]addonStartup.json.lz4 - Все запущенные дополнения, без расположения.
::
:: handlers.json - Типы файлов и действия при их загрузке
:: sessionstore.jsonlz4 - Сохранённая сессия
:: formhistory.sqlite - история заполнения веб-форм, в том числе и строки поиска :: (История автозаполнения)
:: permissions.sqlite - разрешения для сайтов :: (Настройки сайтов)
:: blocklist.xml - список заблокированных дополнений
:: content-prefs.sqlite - индивидуальные настройки страниц
:: cookies.sqlite - куки
:: logins.json - сохраненные пароли
:: key4.db - ключ шифрования паролей
:: cert9.db - сертификаты безопасности
:: secmod.db - база данных модулей защиты
:: cert_override.txt - user-исключения сертификатов
:: mimeTypes.rdf - типы файлов "открыть-сохранить"
:: parent.lock - создается в активном профиле
:: persdict.dat - слова, добавленные вами в словарь
:: search.json.mozlz4 - поисковые системы
:: signons.sqlite - сайты с "не сохранять пароль"
:: pref.js - about:config
:: user.js - значения переписываемые в "pref.js" при запуске, изменить может только пользователь
:: webappsstore.sqlite - хранилище DOM, для веб-сайтов
:: xulstore.json - настройки панелей инструментов, окон (Customize)


Сам батник который запускается, дело в том что там "TIMEOUT 6" и если его напрямую запускать он ведет отсчет, "@echo off" пробовать? tm нужен чтобы фф успел закрыться или использовать везде "if exist"? п.с батник забит так как я пытался учиться и забросил). Даже если сделать как надо, то все равно ведь окно cmd вылазит на секунду.

Отредактировано func4ptch4 (13-08-2019 23:43:57)

Отсутствует

 

№1361714-08-2019 00:04:43

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 66.0

Re: Custom Buttons

mokujin
Хороший ход ! Но неполный . Внизу

скрытый текст
nircmd.exe  wait 1500
nircmd.exe  killprocess  memreduct.exe
nircmd exec hide "..\%profile%\memreduct\trayupdate.exe"

Если прокатит еще пару батников также запустить, то возьму, хотя вроде итак доволен.

func4ptch4
chrome\user_chrome_files\_Local\Updates\sqlite[Fix].bat
Это что за путь? Сам батник где?
Короче, сделал все 2мя способами  по mokujin через vbs , и по своему , батники в exe , тоже не видно консолей.
Но по mokujin это другой коленкор....Респект!

Отредактировано solombala (14-08-2019 01:13:45)

Отсутствует

 

№1361814-08-2019 01:53:51

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 497
UA: Firefox 60.0

Re: Custom Buttons

func4ptch4 пишет

А этот код как я понял, ищет процесс и привязывает к нему параметры запуска? то есть при хоткее не обязателен.

Да. там же видно что параметны передаются, и цифра - это их кол-во. Без параметров заводи просто, да.

func4ptch4 пишет

дело в том что там "TIMEOUT 6" и если его напрямую запускать он ведет отсчет, ........ tm нужен чтобы фф успел закрыться

дык, там в самом начале закоментированно это все. Тот кто его писал, сделал проверку... а кто-то нехороший, это место закоментировал. разкоментируй

скрытый текст

Выделить код

Код:

title Оптимизация/сжатие баз данных Portable Firefox
:try
cls
tasklist | find /i "firefox.exe" >nul
if not errorlevel 1 (echo. && echo. && echo. && echo          Вы должны закрыть Firefox для выполнения оптимизации^! && >nul ping -n 2 127.0.0.1 && goto try)
echo.
echo.
echo.

Добавлено 14-08-2019 02:12:47

solombala пишет

ход ! Но неполный . Внизу

а зачем убивать такую мелкую программу? Афтар этой проги, походу неплохой кодер и знает что делает. Никаких мего-библиотек и "подключаемых модулей"(когда нужна одна ф-ция, а тянется 2МБ кода, который никогда не будет использоваться) в ней нету. Скромно висит-себе на 2Мб и не мешает совершенно :)

Отредактировано mokujin (14-08-2019 02:12:47)


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№1361914-08-2019 11:06:21

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 68.0

Re: Custom Buttons

mokujin

mokujin пишет

а зачем убивать такую мелкую программу?

А зачем ей висеть в трее? Она будет работать независимо от браузера , там много настроек, от ЦП , к примеру. И при закрытии браузера она тоже остается ?
Ну, и what's the point ?

Отсутствует

 

№1362015-08-2019 22:21:56

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 497
UA: Firefox 60.0

Re: Custom Buttons

solombala пишет

what's the point ?

The point is... that you don’t have any idea how OS Windows works; you have no idea what actualy is process, file, path, .... you have no idea what are you talking about. бля!

Добавлено 15-08-2019 22:30:20
Dumby, благодарю. То, что ты снова явил свою магию, настолько развёрнуто :)  Попробую понять что там-зачем и как... не уверн что дойдёт, но это оч. интересно.
Этот "простой\упрощённый синтаксис", часто слишком сложен в понимании для нас, землян. Но мы не жалуемся, мы записуем и... возможно догонем. когда-нить.

Отредактировано mokujin (15-08-2019 22:36:39)


...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation

Отсутствует

 

№1362117-08-2019 00:19:47

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 220
UA: Firefox 68.0

Re: Custom Buttons

mokujin
Привет, возможно этот код переместить в tampermonkey ну или через кнопку в инициализаций?
Он дает без запроса скачивать .torrent, страница расширения 1 вот еще 2 аддон делает тоже самое но код больше.
Although, можно и как расширение оставить да?)

InlineDisposition Reloaded

Выделить код

Код:

function replaceDisposition(e) {
  var _re = /^\s*(attachment|file)/i;
  for (var header of e.responseHeaders) {
    if (header.name.toLowerCase() == "content-disposition" && _re.test(header.value)) {
      header.value = header.value.replace(_re, "inline");
      break;
    }
  }
  return {responseHeaders: e.responseHeaders};
}
 
browser.webRequest.onHeadersReceived.addListener(
  replaceDisposition,
  {urls: ["<all_urls>"]},
  ["blocking", "responseHeaders"]
);

Отредактировано func4ptch4 (17-08-2019 00:26:21)

Отсутствует

 

№1362217-08-2019 19:15:51

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 608
UA: Firefox 56.0

Re: Custom Buttons

Привет. Сижу на WF, а тут решил FF68 поюзать. Но т.к. для меня важно наличие СВ, то с него и начал. Закинул config.js и config-prefs.js куда надо, установил custom_buttons-0.0.7.0.0.1-fx.xpi. Вроде все нормально, даже jsloader.shareGlobal проверил, в about:addons СВ отображается, как установленный и включенный. Но не работает. Кнопки не устанавливаются, настроек типа "отобразить кнопку..." нет, и нет папки custombuttons в профиле. Возможно, это потому, что я на портабельном фоксе экспериментировал, но другие то расширения работают. Что еще делать, omni.ja пилить? Где и что?

Отсутствует

 

№1362317-08-2019 20:25:27

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 220
UA: Firefox 68.0

Re: Custom Buttons

Ultima2m https://forum.mozilla-russia.org/viewto … 80#p772180 и пост ниже смотрел? может устанавливал старое + надо оба кода config.js+bootstrap-loader.js в config.js, у меня портативка норм работает все.

Отредактировано func4ptch4 (17-08-2019 20:25:44)

Отсутствует

 

№1362418-08-2019 09:04:09

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 608
UA: Firefox 56.0

Re: Custom Buttons

func4ptch4 пишет

надо оба кода config.js+bootstrap-loader.js в config.js

Спасибо. По-моему, именно это и помогло. А на 69 это будет работать или опять пляски с бубном затевать?

Отсутствует

 

№1362519-08-2019 22:25:53

Andrey_Krropotkin
Участник
 
Группа: Members
Зарегистрирован: 11-11-2011
Сообщений: 481
UA: Firefox 68.0

Re: Custom Buttons

Dumby Вы не могли бы посмотреть старую кнопку и подраввить для 68 и вдобавок для многопроцессорного? Или хотя бы показать направление как ее исправить?

Отсутствует

 

Board footer

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