Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Opera на основе Chromium (часть 8)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошлые части темы: 1 | 2 | 3 | 4 | 5 | 6 | 7

 

Stable
(115.0.5322.77 от 05.12.2024)
Изменения

Beta
(116.0.5366.5 от 09.12.2024)
Изменения

Developer
(117.0.5383.0 от 16.12.2024)
Изменения

GX
(115.0.5322.89 от 12.12.2024)
Изменения

Сrypto
(108.0.5067.28 от 14.03.2024)
Изменения

Windows: Скачать
Windows (x64): Скачать
Windows (Portable): Скачать
Windows 7/8 (Opera 95): Скачать
Windows XP/Vista (Opera 36): Скачать
Linux: Скачать
macOS: Скачать

Windows: Скачать
Windows (x64): Скачать
Windows (Portable): Скачать
Linux: Скачать
macOS: Скачать

Windows: Скачать
Windows (x64): Скачать
Windows (Portable): Скачать
Linux: Скачать
macOS: Скачать
Windows: Скачать
Windows (x64): Скачать
Windows 7/8 (Opera GX 95): Скачать
Windows (x64): Скачать
macOS: Скачать
Android: Скачать
Версия для старых ПК
(процессор без SSE2)
: Скачать
Архив старых версий

 

Сборник настроек, расширений, скриптов, вопросов и ответов
Полезное для Opera Blink
Расширения, плагины, темы, утилиты для Operа Blink

Всего записей: 39154 | Зарегистр. 26-02-2002 | Отправлено: 14:17 12-03-2023 | Исправлено: MAX63ru, 15:01 16-12-2024
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
 
Складывается впечатление, что вы не совсем понимаете, что делаете.
Я дважды проиллюстрировав поиск и замену с помощью внешнего файла.
Сперва абстрактно, что можно применить к любой цели, далее конкретно,
взяв ваш батник и — для примера — переработав несколько условий.
 
Попробуем в третий раз:
 
* Создайте папку C:\Test
* Положите в неё vivaldi.dll и sfk.exe
* Создайте и запустите patch.cmd со следующим содержанием:

@echo off
 
> vivaldi.dll.patch (
    echo :binary
    echo :# location.vivaldi.com
    echo /6C6F636174696F6E2E766976616C64692E636F6D/302E302E302E302F5F5F5F5F5F5F5F5F5F5F5F5F/
    echo :# return-404.vivaldi.com
    echo /72657475726E2D3430342E766976616C64692E636F6D/302E302E302E302F5F5F5F5F5F5F5F5F5F5F5F5F5F5F/
)
 
sfk.exe replace vivaldi.dll -bylist vivaldi.dll.patch -yes
del vivaldi.dll.patch
goto :eof


Цитата:
Что такое $ в начале строки?

Это сигнал, что перед вами не просто текст, а содержание командной строки.
Примерно как + перед номером телефона (+7) или часовым поясом (+03:00).
Под Windows вам привычнее видеть C:\> или PS C:\>, но то больше символов.

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 18:14 07-02-2024 | Исправлено: kraeved, 23:08 07-02-2024
UnnPacK

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved
по моему фигня какая-то
patch.txt - 383 строк для замены
sfk replace opera_browser.dll -bylist patch.txt -yes
прошло 4м 30с

Код:
[total hits/matching patterns/non-matching patterns]
30% opera_browser.dll : 0 changes

остановил и не стал дожидаться
 
по моему, не понимает строки в hex последовательности - что в нижнем, что в верхнем регистре
а вот в ansi делает замену

upd.
забыл добавить :binary

Всего записей: 476 | Зарегистр. 26-01-2014 | Отправлено: 18:36 07-02-2024 | Исправлено: UnnPacK, 21:22 07-02-2024
Capushon

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved
А контролировать как что было заменено, а что не найдено?

Всего записей: 4747 | Зарегистр. 18-07-2006 | Отправлено: 18:41 07-02-2024
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
 
Зачем вообще патчите? Цель какая?
Для себя интересуюсь...

Всего записей: 17786 | Зарегистр. 14-10-2001 | Отправлено: 19:15 07-02-2024
Capushon

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 
vi_fix.cmd_07_02_2024.7z

Всего записей: 4747 | Зарегистр. 18-07-2006 | Отправлено: 20:35 07-02-2024
UnnPacK

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vi_fix.cmd_07_02_2024.7z  
№3
прирост есть
было 03:37, стало 02:46
 
 

Всего записей: 476 | Зарегистр. 26-01-2014 | Отправлено: 21:20 07-02-2024
Capushon

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
UnnPacK:
Цитата:
прирост есть
Я думал будет раз в 200 быстрее...

Всего записей: 4747 | Зарегистр. 18-07-2006 | Отправлено: 21:21 07-02-2024
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
 
1. Сегодня sfk.exe не умеет показывать, какие замены не сработали.
Я сообщил разработчику, что этой функции не хватает. Так больше
шансов, что она появится. Если ещё кто напишет, то совсем хорошо.
 
Ознакомиться с текстом письма на английском языке…
 
2. Раз вам нужен лог по каждому условию, то пока без многократного чтения
ради поиска строки не обойтись. Однако скорость батника всё равно можно
повысить, исключив этап многоразовой перезаписи. Сперва нужно проверить
наличие строки с помощью команды sfk.exe hexfind: если строка обнаружена,
то пишем условие для замены во внешний файл (vivaldi.dll.patch), а если нет,
то пишем о пропущенной строке в лог (patch.errors.log).  

@echo off
 
if exist patch.errors.log del patch.errors.log
 
:vivaldi.dll
    set "_txt=location.vivaldi.com"
    set "_src=6C6F636174696F6E2E766976616C64692E636F6D"
    set "_rpl=302E302E302E302F5F5F5F5F5F5F5F5F5F5F5F5F"
    call :checkPattern
 
    set "_txt=return-404.vivaldi.com"
    set "_src=72657475726E2D3430342E766976616C64692E636F6D"
    set "_rpl=302E302E302E302F5F5F5F5F5F5F5F5F5F5F5F5F5F5F"
    call :checkPattern
goto :fixBinary
 
:checkPattern
    sfk hexfind vivaldi.dll -bin /%_src%/ -nodump -quiet
    if %errorlevel% equ 1 (
        echo :binary
        echo :# %_txt%
        echo /%_src%/%_rpl%/
    ) >> vivaldi.dll.patch else (
        echo [ERR] %_src% >> patch.errors.log
    )
goto :eof
 
:fixBinary
    sfk.exe replace vivaldi.dll -bylist vivaldi.dll.patch -yes
    del vivaldi.dll.patch
goto :eof

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 21:32 07-02-2024 | Исправлено: kraeved, 05:28 08-02-2024
UnnPacK

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
Цитата:
Я думал будет раз в 200 быстрее..

это сарказм, да?!
 
быcтро/медленно - это все субъективные оценки, раз в полгода патчить, а время ожидания занять чаепитием
для меня быстро - это если бы задача выполнилась за 10 - 15 секунд, но как мне кажется, на любом ЯП невозможно добиться такой производительности, из-за слишком большого объема данных
 
еще можно немного ускорить убрав ненужые строки, например такие:
[00]..\..\opera\opera_components\partner_bookmarks\partner_bookmarks_utils.cc[00]

Всего записей: 476 | Зарегистр. 26-01-2014 | Отправлено: 21:44 07-02-2024
Capushon

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved:
Цитата:

Код:
:checkPattern
    sfk hexfind vivaldi.dll -bin /%_src%/ -nodump -quiet
    if %errorlevel% equ 1 (
        echo :binary
        echo :# %_txt%
        echo /%_src%/%_rpl%/
    ) >> vivaldi.dll.patch else (
        echo [ERR] %_src% >> patch.errors.log
    )
goto :eof
Так он не сказал ничего нового - у меня так и работало с самого начала)
 
   
 
Добавлено:
UnnPacK:
Цитата:
это сарказм, да?!
Нет, я  серьёзно так думал, что основная потеря скорости в открытии .dll при каждом вызове, ан-нет.
 
Добавлено:
UnnPacK:
Цитата:
раз в полгода патчить, а время ожидания занять чаепитием
Дык и я о том же)

Всего записей: 4747 | Зарегистр. 18-07-2006 | Отправлено: 21:45 07-02-2024 | Исправлено: Capushon, 21:47 07-02-2024
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
 
Вы команду hexfind видите? В ней отличие. А вы смотрите на errorlevel и «о, ничего нового».
У вас перезапись файла идёт много раз по числу поисковых строк, а у меня только один раз.

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 22:02 07-02-2024 | Исправлено: kraeved, 23:04 07-02-2024
UnnPacK

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon

Цитата:
основная потеря скорости

много нюансов, однозначно нельзя сказать в чем именно потеря - надо тестировать )

Цитата:
sfk.exe hexfind
- может так быстрее будет
 

Всего записей: 476 | Зарегистр. 26-01-2014 | Отправлено: 22:02 07-02-2024
Capushon

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved:
Цитата:
«о, ничего нового».
Второй раз хамишь...
 
Добавлено:
UnnPacK:
Цитата:
- может так быстрее будет
На 3 секунды?) Если совпадений нет - файл и так не перезаписывается. Только ещё потеряем время на цикл сортировки есть/нет совпадения.

Всего записей: 4747 | Зарегистр. 18-07-2006 | Отправлено: 22:09 07-02-2024
greeple

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved
можно просто не удалять файл del vivaldi.dll.patch и вот тебе и лог, что применилось

Всего записей: 5662 | Зарегистр. 11-02-2020 | Отправлено: 22:28 07-02-2024
UnnPacK

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
на самом деле тут нужна программа которая просто выводила бы найденные позиции в dll:
позиция - шаблон для замены, или позиция - шаблон для поиска
основная трудоемкость именно в поиске
на замену уходит 0.300 мс )
и перезаписывать целиком ничего не надо, открыть файл, перейти к позиции, записать n байт, все )

Всего записей: 476 | Зарегистр. 26-01-2014 | Отправлено: 22:33 07-02-2024
greeple

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Capushon
Цитата:
Я думал будет раз в 200 быстрее..

а ты powershell смотрел? что скидывали https://github.com/belane/PS-BinDiff
вот опера 102.0.4880.117 (какая была на компе)
создал патч сравнив два файла, один который был и второй после твоего патча, прошло не больше минуты
потом этот патч берёшь запускаешь и появляется окно с выбором dll (только в патче надо строку подредактировать $OpenFileDialog.filter = ".dll для патча|*.dll") по умолчанию там строка файла из которого делается патч
применяется патч потом 40 сек у меня  
насколько там всё правильно и ровно надо проверять
и не понятно что за $hash = "EC-9B-16-B9-36-1E-43-94-F1-45-B0-47-85-20-2B-DF" в патче, и на что влияет

Код:
## CHECKSUM VERIFY
$md5 = New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider
if ($hash -ne [System.BitConverter]::ToString($md5.ComputeHash([System.IO.File]::ReadAllBytes($OpenFileDialog.filename)))) { Write-Output "Checksum error"; break }

видимо если не тот файл дашь, то патчить не будет, но это можно ручками убрать, так же как и подредактировать под все .dll
тут вот для сравнения файлы https://depot.4d2.org/XFc6G9YSV8K0.7z там обычный dll, после sfk и после powershell

Всего записей: 5662 | Зарегистр. 11-02-2020 | Отправлено: 23:08 07-02-2024
Dicinson



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хорошо бы работу скриптов где-нибудь в соответствующей теме наладить.. Ну в самом деле, что это на последних страницах? Простыни с кодами, да картинками
 
Вышла Stable 107.0.5045.15 и она не заводится с настроенным профилем.
Её запустить получается лишь с чистым профилем. Есть у кого такое или всё работает после обновления с настроенными флагами, заблокированными мусорными расширениями, выпиленными поисковиками и настроенной кнопкой VPN?
Отныне не работает подмена файлов в папке resources (левых поисковиков) и ещё чёрт знает что там не работает... Я так и не смог запустить 107.0.5045.15 с минимально допустимым ущербом и ещё не известно будут ли работать всевозможные методы из FAQ (типа отключения мусорных расширений) на чистом профиле..

Всего записей: 1853 | Зарегистр. 09-03-2010 | Отправлено: 23:14 07-02-2024
greeple

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dicinson
Цитата:
Хорошо бы работу скриптов где-нибудь в соответствующей теме наладить.. Ну в самом деле, что это на последних страницах? Простыни с кодами, да картинками

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

Цитата:
Отныне не работает подмена файлов в папке resources (левых поисковиков) и ещё чёрт знает что там не работает..

у меня сейчас после патча на 102ой версии при первом запуске вылезла ошибка что в ресурсах что то не так и всё, потом запустил заново (но у меня не было профиля) всё запустилось, надо было бы с профилем проверить, но не было

Всего записей: 5662 | Зарегистр. 11-02-2020 | Отправлено: 23:25 07-02-2024 | Исправлено: greeple, 23:25 07-02-2024
Dicinson



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
greeple
Никакого отношения к здешней теме не имеют  sfk.exe а-ля vivaldi.dll....
На 102й версии всё хорошо, так же как и на 104й, я выше говорил о 107й.

Всего записей: 1853 | Зарегистр. 09-03-2010 | Отправлено: 23:30 07-02-2024
UnnPacK

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вот еще супербыстрый вариант патчинга)
заранее хранить список замен в файле/файлах для каждой sub-версии opera и md5 хеш
предварительно сравнивать md5 - если совпадает с оригинальным dll - применять патч
ps по моему, речь о таком способе и идет в посте от greeple

Всего записей: 476 | Зарегистр. 26-01-2014 | Отправлено: 23:47 07-02-2024 | Исправлено: UnnPacK, 23:49 07-02-2024
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167

Компьютерный форум Ru.Board » Компьютеры » Программы » Opera на основе Chromium (часть 8)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru