Inno Setup XDELTA Patch Maker

Inno Setup XDELTA Patch Maker 2.6.3.2

Нет прав для скачивания

cepbl4

Мимокрокодил
Подскажите, почему патч говорит, что не установлена папка установки, в то время как путь подставлен? Смотрите вложение.

И второе, как сделать, чтобы путь дополнился собственным значением? Я делаю патч для игры внутри папки Стим, нужно чтобы путь Стима подхватился с реестра (это сейчас у меня сделано), и чтобы путь дополнился так, чтобы получилось:
d:\Program Files (x86)\Steam\SteamApps\common\Team Fortress 2\
 

Вложения

Shegorat

Lord of Madness
Администратор
Пользователь Shegorat обновил ресурс Inno Setup XDELTA Patch Maker новой записью:

Inno Setup XDELTA Patch Maker 2.5.0.0 [10.01.2017]

Изменения:
  • Added field "Extra path" to "Patch Path Detection".
  • Added option "Check Before Patching" to "Detecting Running App".
  • Added additional check for proper format of the patch executable version of PatchVersion field.
  • Fixed bug with PatchingError := 1 value if it used before patching.
  • Minor tweaks.
Узнать больше об этом обновлении...
 

alex98

Мимокрокодил
Update.
Списался с автором и он признал, что по умолчанию такое не делается и выслал исправленный iss. Правда я сменил тип engine с XDELTA на JojoDiff и патчи уменьшились в разы, что сделало ненужным мои выкрутасы с распаковкой ресурсов для пропатчивания.

Вопрос ниже устарел и не актуален. :hi:


Пишу ночью, голова не особо варит, поэтому наверное буду коряво изъясняться. Заранее прошу прощения.

Стояла тут задача сделать патчер, который закидывает на комп в папку с игрой архиватор (7z.exe), распаковывает ресурс (набор файлов в архиве), потом патчит то, что распаковал и запаковывает снова.
Трудность возникла с тем, что если я кладу в обрабатываемую для патча папку 7z.exe, то он появляется в целевой папке только после отработки скрипта прописанного во вкладке "Berofe Patching". Алгоритм патча видимо настроен так, что копируются новые файлы уже после того как всё пропатчилось. Нет, я конечно извернулся путем выгрузки в текстовый файл в темпе текущей временной папки куда скрипты распаковались с присоединением к ней папки "PatchData" в которой лежит 7z.exe, потом задал PATH с этой папкой, но в логах видно, что идут ошибки:

Запуск процесса верификации файлов...
OK! Правильный файл: "key.txt"
[!] Следующий файл не существует и был пропущен: "app\file.txt"

Потом идёт:
Извлечение патч-данных во временную папку...

Обновление запущено в форсированном режиме!
Будут обновлены только существующие требуемые файлы, все несуществующие будут пропущены...

[Начало сессии обновления]
--> Обновление файла: "key.txt"
--> Обновление файла: "app\file.txt"
[Завершение сессии обновления]

И нужные файлы обновляются.
Только потом идёт:

[Сессия копирования начата]
--> Копирование файла: "7z.exe"
[Сессия копирования завершена]

Подготовка к следующим операциям, ожидание выгрузки патч-движка...

Установка файловых атрибутов...
Запуск процесса верификации файлов...
OK! Правильный файл: "key.txt"
[!] Следующий файл не существует и был пропущен: "app\file.txt"

Файловые атрибуты были установлены успешно!

Как организовать всё это дело, чтобы 7z.exe был доступен на момент срабатывания скрипта прописанного во вкладке "Berofe Patching" ?

Патч делается с "inside patch".
 
Последнее редактирование:

alex98

Мимокрокодил
На днях вышло обновление 2.5.3.0:

http://www.softpedia.com/get/Programming/Patchers/Inno-Setup-XDELTA-Patch-Maker.shtml
  1. Добавлена опция "Volume buttons" к "Background Music", кнопки регулирования громкости для кнопки "Music" можно отображать или убирать.
  2. Добавлена новая библиотека "ISXPM.dll" вместо "ISTask.dll", теперь опция "Console" работает с отключенной опцией "Simply log", также был исправлен баг с таймерами сборки при выполнении препроцессора.
  3. Улучшено пересоздание кэша, теперь кэш будет всегда пересоздаваться при первой компиляции после запуска программа, а также после загрузки проекта. Также кэш будет пересоздаваться при изменении типа патча (стандартный или мультиверсионный).
  4. Изменено расположение выгрузки патч-движка в режиме ускоренного (fast-speed) применения, теперь выгрузка происходит сразу после применения патч-файлов.
  5. Изменено расположение действий кода "Before Patching" в патче, теперь это расположено перед верификацией файлов.
  6. Исправлен баг с компиляцией, если кнопка "Music" была включена, а потом отключена при следующей компиляции.
  7. Исправлен баг с пересозданием кэша, если папка с патч-данными пустая.
  8. Небольшие обновления, исправлены некоторые неточности.
Вижу, что автор мою проблемку пофиксил в пункте №5.
А за пункт №1 ему вообще большущее спасибо. Очень не хватало. :good:
 

Shegorat

Lord of Madness
Администратор
Shegorat обновил(а) ресурс Inno Setup XDELTA Patch Maker новой записью:

Inno Setup XDELTA Patch Maker 2.6.3.1 [31.12.2020]

Изменения:
  • Optimized the "Repeat build" option, now if the internal check detect the size of the patch to be more than 1GB, then the next compilation retries will be with enabled launcher without unnecessary compilations.
  • Added command-line batch-build feature for multiple patches compiling (read
  • Command-line help section).
  • Added internal feature for check 2Gb patch limit, if "Create launcher" option is
  • Not checked, and rebuild a patch automatically with "Create...
Узнать больше об этом обновлении...
 

dixen18

Ветеран
Народ а как сделать по-быстрому батник или скрипт через ISEXEC для пропатчивания? Нужно обработать 454 файла и писать батник вручную..времени нет
 

Krinkels

Он где то тут
Администратор
Файлы в одной папке лежат? Если да то можно сделать что то типа такого
Создаём батник в нужной папке со следующим содержимым:
Код:
@echo off

for %%f in (*.*) do (
rem Тут обрабатываем файл
   echo %%f
)

@pause
В "%%f" будет имя файла.
 

artemiys930519

Мимокрокодил
Добрый день.
Очень хороший и полезный инструмент. Но в последнее время сталкиваюсь с ошибкой. Патч срабатывает 50/50. С чем связана ошибка не могу понять, про какое деление на ноль говорится, ошибка не гуглится. Может кто сталкивался, кто может подсказать?)
1618905258977.png
Настройки стандартные, за исключением того что передаю в переменную путь куда надо устанавливать
1618905611505.png
И запускаю exe после установки патча
1618905638002.png
 
Последнее редактирование:

Shegorat

Lord of Madness
Администратор
Shegorat обновил(а) ресурс Inno Setup XDELTA Patch Maker новой записью:

Inno Setup XDELTA Patch Maker 2.6.3.2 [16.04.2021]

Изменения:
  • Исправлена некорректная работа при удалении мусорных папок, теперь откат не будет случаться, если в мусорных папках у пользователя находятся дополнительные файлы.
  • Добавлена опция "Ignore error when deleting junk files", теперь когда включена эта опция, и клиент не имеет мусорных файлов для удаления, то это не вызовет ошибки и отката.
  • Небольшие обновления.
Узнать больше об этом обновлении...
 
Сверху