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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11

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

usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inno Setup XDELTA Patch Maker



What is it?
This is a FREE Patch Maker for your apps, games or some another products with using Inno Setup runtimes and techniques based on powerfull XDELTA engine.
(Similar software: PatchWise Free, Clickteam Patch Maker, Visual Patch, Patch Factory).
 
Что это?
Это бесплатный генератор патчей-обновлений для Ваших приложений, игр и других продуктов, с использованием технологий и компонентов Inno Setup, основанных на мощном движке XDELTA.
(Подобный софт: PatchWise Free, Clickteam Patch Maker, Visual Patch, Patch Factory).
 
Текущая версия: 2.6.4.3
Download latest full build

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 15:19 19-02-2015 | Исправлено: AlexALSP, 09:06 24-11-2023
Xom9I4oK



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

Цитата:
Я правильно понимаю, нужно реализовать возможность манипулировать батниками из директории с обновляемой программой?  

Да, правильно - я если честно изначально думал, что оно изначально так и работает.  
P.S. Спасибо за совет.

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 20:01 26-05-2015 | Исправлено: Xom9I4oK, 20:02 26-05-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xom9I4oK
Опцию выполнения Batch кода из директории с обновляемой программой в соответствующих шагах реализую в следующем билде.

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 20:13 26-05-2015 | Исправлено: usermode, 20:16 26-05-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
[Release 1.9.6]
 
 - Fixed bug with extracting batch-files if External files extracted to the temporary dir.
 - Fixed bug with extracting batch-files if Patch run not in a Silent mode.
 - Added feature for Batch Script "Execute from InstallDir". The option is available for steps "Before Patching" and "After Patching" only.
 - Added to constant "PatchingError" value 2 for Inno Script. This value is mean that "PatchingError" was not performed, it can be used in "Insert Custom Actions" in "On Finish" step if user run patch and close it down without patching process, f.e.: if PatchingError = 2 then begin MsgBox('Patch was not applied! All changes have effect only after patching!', mbInformation, mb_OK); end; For other steps value 2 is not actually.
 - Added to PatchOutput button [R] for run compiled patch with specified name from Patch Maker.
 - Minor tweaks, fixed some issues.

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 15:16 28-05-2015
Xom9I4oK



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
usermode
У меня появились новые вопросы по программе (я использую SilentForm, бекап в настройках выключен):
Если патч большой (патчится много файлов большого размера), то во время бекапа файлов (я имею ввиду тот, который перед патчингом файлов происходит) на форме это никак не отображено (допустим, "подождите идет резервное копирование") и остается видимым только заголовок патчера, а остальная часть окна становится серой (подвисает). Далее, если идет откат изменений (если была включена проверка хэша и какой-то файл не смог пропатчится, или смог, но контрольная сумма не совпадает, тк исходный файл был не тот что надо - модифицирован), то поведение практически аналогично бэкапу, только форма не "сереет" (и нет надписи типа "идет откат изменений"). И еще - я включал лог, чтобы понять на каком файле стопорится патчер, но так и не смог этот лог-файл найти.

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 19:22 30-05-2015 | Исправлено: Xom9I4oK, 19:27 30-05-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xom9I4oK
в Silent режиме бэкап и лог не предусмотрен (на то они и тихие), но для отката копии файлов в резервной папке создаются.
 
по поводу больших файлов: подвисать будет по-любому при подсчете md5 и ожидании резервного копирования - тут патчер как бы не причем. так что нужно сделать - дополнительные уведомления в окне SilentForm патча или еще какие пожелания будут?
 
рекомендуется не делать патч-файлы для сжатых архивов, например, если файлы по 4 гигабайта и патч-файл выходит тоже 4 гб. в таком случае лучше поместить их в External Files рядом с патчем и скопировать оттуда.

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 21:03 30-05-2015 | Исправлено: usermode, 21:06 30-05-2015
Xom9I4oK



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
usermode
Да, уведомлений будет достаточно. Хотя в идеале, конечно, хотелось бы прогресс бар для бэкапа и отката изменений в случае неудачи.
У меня тут еще одно пожелание возникло. Программа кэширует патч-файлы, но я не заметил, чтобы это как-то влияло на скорость создания патча повторно. Мне эта ф-ция еще в Visual Patch'е приглянулась. Так что хотелось бы, чтобы при вкл. соотв. опции прога брала патч-файлы из кэша (он будет очищаться, если та опция будет выключена).

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 21:33 30-05-2015
usermode

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

Цитата:
Хотя в идеале, конечно, хотелось бы прогресс бар для бэкапа и отката изменений в случае неудачи.  

патчинг и бэкап делаются в цикле "поштучно", а не сразу сначала делается бэкап, а потом патчинг. Поэтому для бэкапа и патчинга прогресс бар общий. Для отката можно сделать также индикацию, но не в виде второго прогресс бара, а делать обнуление текущего, т.е. как в Inno - с последней отметки до нулевой. Насчет кэширования - тогда надо делать сохранение патч-файлов в папке xdata в отдельных папках с соответствием имени и версии программы проекта, и тут тоже еще придется поразмыслить, нужно будет тогда еще резервировать под каждый проект свой Checker.ini с листингом файлов и md5 - в целом опцию одобряю, постараюсь реализовать. Еще сделаю опцию "Show batch window" - а то есть такие сценарии, которые могут потребовать от пользователя ввода или подтверждения данных для выполнения определенных действий.

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 22:11 30-05-2015 | Исправлено: usermode, 22:21 30-05-2015
Xom9I4oK



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

Цитата:
патчинг и бэкап делаются в цикле "поштучно", а не сразу сначала делается бэкап, а потом патчинг.

Ясно, а как тогда объяснить что SilentForm патч (сам патч 377Мб, патчатся 259 файлов размером менее 100Мб каждый) в самом начале "подтупливает/подвисает" (проверял на 2х разных компах, на одном из них стоял SSD-диск) минуту или даже дольше?
И еще не понятно (даже по логу) почему патч (в этот раз делал на движке xdelta, даже подозрительно, что он меньше получился чем JoJodiff) стопорится. Я патчу ту же папку на основе которой делал патч...

Код:
 
Целевой файл: C:\!BioShock 2\SP\Content\Sounds_Windows\LocalizedPrefixMap.pmp
Файл патч-данных: C:\Users\Serg\AppData\Local\Temp\is-GTEE7.tmp\PatchData\SP\Content\Sounds_Windows\LocalizedPrefixMap.pmp.xdelta
Обновленный: C:\!BioShock 2\SP\Content\Sounds_Windows\LocalizedPrefixMap.pmp
Правильный MD5 хэш для обновленного файла: C:\!BioShock 2\SP\Content\Sounds_Windows\LocalizedPrefixMap.pmp
Всего обработано файлов: 84
[Завершение сессии обновления]
Откат начался!
 

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 22:46 31-05-2015 | Исправлено: Xom9I4oK, 23:18 31-05-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xom9I4oK
Цитата:
в самом начале "подтупливает/подвисает"
в самом начале "подтупливание" может быть обусловлено извлечением патч-файлов во временную директорию. Тоже самое наблюдается при сборке патча без включенной опции "Inside patch"?  
"Подтупливает" только SilentForm или при таких же опциях и основной шаблон?

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 23:17 31-05-2015 | Исправлено: usermode, 23:34 31-05-2015
Xom9I4oK



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

Цитата:
"Подтупливает" только SilentForm или при таких же опциях и основной шаблон?

Основной тоже тупит. Без "Inside patch" оба режима не тупят. С External files тоже не все так гладко - с выключенным Include files into the patch патч не проходит компиляцию.
P.S. + я выше писал что с включенным Verify hash скомпиленный патч не доходит до конца и стопорится под конец пропатчивания.

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 15:35 01-06-2015 | Исправлено: Xom9I4oK, 15:39 01-06-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xom9I4oK
Цитата:
с включенным Verify hash скомпиленный патч не доходит до конца и стопорится под конец пропатчивания.
какой тип патча? и можно проект залить или скриншот настроек?

Цитата:
 С External files тоже не все так гладко - с выключенным Include files into the patch патч не проходит компиляцию.  
У меня по дефолту компилирует. Скрипты или батники подключаются? Был баг с компиляцией, если была выбрана и отменена музыка. Этот баг уже исправлен.
 
Предлагаю потестировать бета версию с возможностью кэширования. Помимо этого сделан обратный индикатор для прогресс бара при откате и исправлен баг с компилированием при выборе и отмене музыки. Также поправил "серую" форму при запуске SilentForm патча, поправил порядок извлечения временных файлов: теперь патч-файлы приоритетнее внешних (это еще будет пересмотрено), ну и еще по мелочи.
Накатывать поверх 1.9.6:
1.9.7beta
http://rghost.ru/6JbyHWNbT
 
по возможности. нужно тщательно потестировать новую фичу кэширования. папка для кэширования создается на основе имени и версии приложения.
 
Нужно будет еще определиться по следующему:  
- md5 верификацию файлов в патче делать отдельным циклом после выполнения всех действий или оставить как есть?
- по поводу подвисания или подтормаживания при извлечении патч-файлов во временную директорию: тут чтобы ничего не подвисало с опцией "Inside patch" нужно предварительно перед инициализацией патча организовывать извлечение патч-файлов с отображением уведомления, иначе никак, потому как для их извлечения по-любому нужно время. подвисание также будет при запуске при использовании большого размера внешних файлов внутри патча, на их предварительное извлечение тоже нужно время - для них тоже можно сделать соответствующее уведомление при запуске.
- какие именно уведомления нужно добавить в SilentForm и на каких этапах?

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 18:16 01-06-2015 | Исправлено: usermode, 18:21 01-06-2015
Xom9I4oK



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
usermode
Оба типа патча. Вот тут http://sendfile.su/1124013 в архиве листинг файлов и папок (я конечно могу залить сами файлы, но Вы будете качать 5 гигов?) и скрины настроек. На скрине где есть External files (без Include files) патч не проходит компиляцию, там где external files нет, либо есть, но с Include files, патч компилируется, но во время его работы почти в самом конце идет откат изменений (Patch was not alied).
Цитата:
1.9.7beta

Ок, протестирую. А по поводу нижеизложенного, то я думаю Вам как разработчику виднее.

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 19:15 01-06-2015 | Исправлено: Xom9I4oK, 19:28 01-06-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xom9I4oK
спасибо, разобрался быстро, исправил невозможность компиляции, остальное еще не потестировал:
(для 1.9.7beta)
http://rghost.ru/8TkgklkvZ
в стабильном релизе добавлю больше информации для пользователя в SilentForm режиме.
 
мне важно, как с данным исправлением ведет себя SilentForm патч? при включенной опции Verify hash все так же делает откат или еще какие-либо проблемы? Если проблема будет, то попробуйте собрать обычный патч и посмотреть в логе оттуда.
 
И еще, как на Ваш взгляд, стоит сделать сохранение Backup в Silent режиме по усмотрению разработчика патча точно так же как Verify hash?

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 19:39 01-06-2015 | Исправлено: usermode, 20:09 01-06-2015
Xom9I4oK



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

Цитата:
мне важно, как с данным исправлением ведет себя SilentForm патч? при включенной опции Verify hash все так же делает откат или еще какие-либо проблемы? Если проблема будет, то попробуйте собрать обычный патч и посмотреть в логе оттуда.  

Лог с обычного патча я уже скидывал выше. Сейчас он не делает откат, но возникла другая проблема - патч устанавливается моментально и пишет типа все ОК, но по сути ничего не пропатчив, то есть в холостую сработал. Добавлено: я забыл папку с External files в этот раз скопировать - теперь сразу после запуска выдает ошибку и делает откат. Новый лог в процессе - скину как только скомпилирую патч. Добавлено2: С обычным патчем (не сайлент) то же самое - пишет что пропатчено, хотя ничего не патчил - только External files скопировал и все. А если 2 раз запускаешь, то выдает ошибку.
Цитата:
И еще, как на Ваш взгляд, стоит сделать сохранение Backup в Silent режиме по усмотрению разработчика патча точно так же как Verify hash?
Думаю смысл в этом есть, хотя лично для моих целей вряд ли понадобится.

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 20:18 01-06-2015 | Исправлено: Xom9I4oK, 20:40 01-06-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xom9I4oK
Цитата:
Лог с обычного патча я уже скидывал выше.
это лог одного удачно обработанного файла, по нему не ясно из-за какой причины начался откат, где-то несоответствие на другом файле.

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

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 20:55 01-06-2015 | Исправлено: usermode, 20:55 01-06-2015
Xom9I4oK



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

Цитата:
по одному и тому же пути он сразу пропатчил, наверное, и не может повторно это сделать по причине, что уже пропатчено. такое ощущение, что Вы сравниваете повторно на двух одинаковых версиях, но в моддифицированной присутствуют дополнительные файлы.  

Врядли за 1 секунду он успел пропатчить уйму файлов - такое пока что не возможно на обычных компьютерах. А Вы сами проверяли с моими настройками? Да и размер (вот ее листинг http://sendfile.su/1124063 - отчет в Мб) папки PatchData говорит об обратном (что я не сравниваю одинаковые папки).

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 21:13 01-06-2015 | Исправлено: Xom9I4oK, 21:15 01-06-2015
usermode

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

Цитата:
Да и размер (вот ее листинг http://sendfile.su/1124063 - отчет в Мб) папки PatchData говорит об обратном (что я не сравниваю одинаковые папки).  
я не утверждаю, хочу лишь удостовериться. такое возможно при включенном кеше, папки повторно не сраниваются. для убеждения перекомпилируйте патч с отключенной опцией кэширования. Но ошибки с моей стороны в скрипте были...

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 21:26 01-06-2015 | Исправлено: usermode, 21:39 01-06-2015
Xom9I4oK



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

Цитата:
я не утверждаю, хочу лишь удостовериться. такое возможно при включенном кеше, папки повторно не сраниваются. для убеждения перекомпилируйте патч с отключенной опцией кэширования.

А я кэширование и не включал.

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 21:33 01-06-2015
usermode

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1.9.7 beta 2
http://rghost.ru/7WtkTkVf4
 
- исправлена загрузка состояния чекбокса кэширования
- исправлен код копирования внешних файлов
- исправлена генерация Checker.ini
- исправлен(?) код верификации md5 для SilentForm
- исправлено состояние прогресс бара при критической ошибке для SilentForm
 
Xom9I4oK
это у меня еще и билдер "поломался"
Спасибо за терпение и помощь в полировании!

 
зы: немного переборщил и добавил дублирующий код для верификации md5, верификация будет выполняться два раза, но для тестирования сойдет

Всего записей: 473 | Зарегистр. 11-12-2014 | Отправлено: 22:23 01-06-2015 | Исправлено: usermode, 22:44 01-06-2015
Xom9I4oK



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
usermode
Снова вернулись к тому с чего начали. Только в этот раз полоска доходит до конца и потом идет откат изменений. В этот раз настройки я поставил те, которые для меня наиболее оптимальны (прошлые были для ускорения тестирования) http://i72.fastpic.ru/big/2015/0601/85/0c5ac4cd6c25c08058b613fb5dc52e85.jpg

Всего записей: 506 | Зарегистр. 01-04-2005 | Отправлено: 22:53 01-06-2015
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup XDELTA Patch Maker


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru