Разработка инсталляторов. Урок 6. Практика создания репаков на примере перепаковки пакета MSI с вашей локализацией
Добрый вечер, уважаемые читатели моего блога. Выходные прошли в разработке неофициального Гида для Голоса, а сегодня я продолжаю свою серию по разработке инсталляторов. Сегодня мы рассмотрим вариант создания перепаковки установочного пакета. Многие из вас, наверное, скачивают различные перепаковки программ и игр. Я уже о них подробно писал. Но напомню, чем они отличаются от программ, распространяемых на официальном сайте приложения:
1. В репаки часто включают локализацию программы, если она отсутствует.
2. Максимально сжимают установочный пакет для уменьшения его размеров.
3. Зачастую включают "лекарство" для программы.
4. Меняют интерфейс установочного пакета и украшают его.
5. Удаляют лишние, на взгляд репакера, файлы.
Сегодняшним подопытным у нас будет программа Araxis Merge. Локализацию для неё я рассматривал в этом уроке по локализации. Также у нас имеется "правленый" исполняемый файл для данной программы (exe) и знания, что нужно прописать в реестр, чтобы программа была активирована.
Программа Araxis Merge распространяется на официальном сайте в виде MSI пакета (Microsoft Setup Intaller). Это достаточно удобно, так как используемый нами Advanced Installer умеет импортировать данные из такого рода установщиков. Создание репаков путём перепаковки из других инсталляторов мы также как-нибудь рассмотрим.
Начинаем.
0. Делать по желанию. Создать папку для проекта перепаковок Advanced Installer, я создал D:\Repack, а в ней уже папку Araxis для этого проекта. По умолчанию программа хранит свои проекты в папке Документы\Advanced Installer\Projects.
1. Мы скачали Araxis Merge с официального сайта. Запускаем Advanced Installer и выбираем Создать -> Преобразование - > Импорт MSI.
2. Указываем путь к файлу установщика программы и папку, которую мы создали для хранения файлов при перепаковке.
3. Ничего не меняем, так как не требуется.
4. После завершения мы видим вкладку "Организация продукта". В прошлом уроке также рассматривали. Как видим, несколько функций отвечают за разные компоненты типа интеграции в проводник и снапшоты. Мы можем изменить названия функций по желанию и их описание.
5. Переходим на вкладку "Сведения о продукте". Как мы видим все данные о программе уже импортированы и не требуют изменения.
6. В "Параметрах установки" также всё ок. Можете без проблем менять там папку для установки и всё остальное. Пакет уже импортирован и полностью доступен вашим правкам.
7. Изначально установщик программы Araxis Merge содержит только английский интерфейс. Не беда! Идём в "Переводы" и добавляем русский. Так как я распространяю данный репак в едином пакете, то устанавливаю многоязычный пакет с возможностью выбора языка. Программа предупредит нас об изменении конфигурации.
8. Выбираем тему оформления. Мы это также делали также в прошлом уроке.
9. Настраиваем "Сборки" - тип пакета, уровень сжатия, иконку для установщика и т.п.
10. Подготавливаем наши русифицированные папки и файлы для Araxis Merge. Добавляем их в проект через контекстное меню. "Правленый" исполняемый файл Merge.exe (в данном случае) мы можем просто заменить в папке с распакованными файлами проекта, то есть в D:\Repack\Araxis\files\Araxis Merge 70.30.4842\Files или просто также добавить его в проект, как и русифицированные файлы. Программа попросит у нас подтвердить замену. Соглашаемся и продолжаем.
11. На этом можно конечно остановиться и собрать пакет. Но нам требуется прописать ключ для программы в реестр, иначе она не будет зарегистрирована, даже несмотря на "правленый" exe. К этому (правленому) файлу приложен и ключ, которым необходимо зарегистрировать программу (В данном случае ******WD:**IN****:**CRACK*:***WE***:**TRUST*:***WD***). Методом поиска в реестре мы знаем, что программа хранит ключ в этой ветке реестра:
12. Как видим выше, там же хранятся регистрационные данные пользователя, которые могут быть любыми и отображаются в "О программе" и никак не влияют на ключ. Мы хотим сделать так, чтобы при установке программы человек мог ввести свои данные для регистрации и они прописались в программе, а ключ пропишется автоматически. Заходим в "Диалоговые окна" и создаём диалог. Или используем существующий, как сделал я (смотрите 5 урок про создание диалогов и добавление данных в реестр). Можете также заполнить поле значение по умолчанию, чтобы оно было прописано автоматически, если человеку, который будет устанавливать ваш репак всё равно, что будет написано в "О программе".
13. Теперь идём во вкладку "Реестр", выбираем нужную ветку, добавляем необходимые ключи, которые будут прописаны автоматически.
Для вводимых в поля значений указываем Свойство -> Пользовательский интерфейс.
14. Вроде ничего не забыли. Теперь можно и собрать пакет.
15. Проверяем установщик. Изменяем значение на свои, если хотите. Я изменил на Zaguzin и Golos.
16. Программа установилась, теперь запустим Araxis Merge и зайдём в "О программе".
Как видим, у нас всё получилось отлично. Размер установочных пакетов удалось уменьшить примерно на 25%, интегрировали русификатор и лекарство. Готовый репак этой программы вы можете взять тут.
На этом на сегодня всё. Встретимся завтра. Подписывайтесь, если ВАМ интересна моя писанина. Спасибо за внимание.