Генераторы патчей
АрхивРазнософтПользователям Linux доступны команды diff и patch, выполняющие сравнение файлов и внесение изменений в исходный документ. А что же делать тем, кто использует Windows? На помощь приходят генераторы патчей.
Patch Wise Free
Автор: Hanmen Technology, Inc.
Ссылка на дистрибутив
Размер установочного файла: 2,5 Мбайт
Лицензия: donationware
Смотреть скриншот
Этот генератор способен создавать как патчи, напоминающие самораспаковывающиеся архивы, так и настоящие пошаговые "мастера" установки с принятием условий лицензии и просмотром readme-файла. В окно патча можно поместить свое имя, e-mail, адрес веб-сайта. Есть возможность запустить пропатченную программу по окончании процесса и создать резервные копии всех изменяемых файлов.
PatchWise сравнивает как отдельные файлы, так и целые каталоги с вложенными подкаталогами. Можно выбирать несколько вариантов сжатия, но при высокой степени сжатия программа работает крайне медленно, а размер создаваемых патчей уменьшается незначительно. Небольшое исследование созданных программой патчей показало, что они сжимаются по алгоритму bzip2. PatchWise переведен на несколько языков, но русского среди них пока нет.
Clickteam Patch Maker
Автор: Clickteam
Ссылка на дистрибутив
Размер установочного файла: 420 Кбайт
Лицензия: shareware, $59
Смотреть скриншот
Patch Maker создает файлы обновления сразу для нескольких версий исходных файлов. Для патчей программ это весьма удобно, но следует помнить, что патч будет использовать только совпадающие во всех версиях файла фрагменты, так что отдельные патчи для каждой версии всё же эффективней. Для любого файла Patch Maker позволяет выбирать действие при ошибке (проигнорировать, выдать сообщение о неверной версии файла, запросить другой каталог и т.д). Можно обновлять файлы в каталогах Windows и System и даже запрещать обновлять определенные фрагменты файла.
Настройки интерфейса включают в себя изменение всех текстов в окне мастера обновления (в частности, их нетрудно перевести на русский язык), выбор рисунков для этого окна. Каталог для обновления можно считывать из ключа реестра или из ini-файла. Выбор степени сжатия невелик - только Smallest и Fastest (самый компактный патч и самое быстрое сжатие). Незарегистрированная версия Patch Maker добавляет к каждому патчу рекламное окно, которое отображается после обновления файлов.
BinDiff
Автор: Игорь Кудрин
Ссылка на дистрибутив
Размер установочного файла: 154 кб
Лицензия: freeware
Смотреть скриншот
Этот генератор патчей имеет очень простой интерфейс, но зато работает быстро и создает самые компактные обновления. На тот случай, если у получателя патча тоже есть Binary Diff, кроме самораспаковывающихся патчей, можно создавать и обычные. Мастер обновления, красивые заставки и прочие излишества полностью отсутствуют.
В утилите BinDiff предусмотрены два метода генерации патчей - быстрый и тщательный. По словам автора, файлы сжимаются LHA-подобным алгоритмом. Можно сравнивать и обновлять не только отдельные файлы, но и целые каталоги, а каталог для обновления на компьютере пользователя либо берется из реестра, либо указывается вручную. Все функции генератора патчей доступны из командной строки, благодаря чему процесс создания обновлений можно автоматизировать. К программе прилагается подробная справка на русском языке.
Сравнение размеров патчей
Для тестирования были выбраны следующие файлы:
- статья в формате MS Word (462 Кб) и ее обновленная версия (430 Кбайт),
- распакованный дистрибутив Total Commander 5.5 (1.7 Мбайт) и 6.0 (1.8 Мбайт).
Во всех генераторах была установлена максимальная степень сжатия и самый простой вариант окна патча (без мастера установки и дополнительных рисунков). Обновленные версии файлов также были упакованы в rar-архив, чтобы проверить, выгодно ли создавать патчи, или же проще сжать файлы хорошим архиватором.
Генератор патчей | Статья | Total Commander |
Patch Wise | 115,1 Кбайт | 847,8 Кбайт |
Patch Maker | 118,6 Кбайт | 848,1 Кбайт |
BinDiff, SFX-патч | 53,4 Кбайт | 810,7 Кбайт |
BinDiff, обычный патч | 26,9 Кбайт | 784,2 Кбайт |
Новые файлы, сжатые rar | 75,0 Кбайт | 1,0 Мбайт |
На небольшом файле со статьей Patch Wise и Patch Maker показали неудовлетворительные результаты. Только BinDiff смог создать патч, меньший по размеру, чем rar-архив с новым файлом. Эта же программа показала лучший результат на дистрибутиве Total Commander.