Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Иконки
Показать сообщение отдельно

Аватара для specialist

Старожил


Сообщения: 406
Благодарности: 108

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: jpg ACDSee.JPG
(10.6 Kb, 163 просмотров)

Замена иконки 7z sfx архива. Придание инсталлятору подобающего вида.

Вокруг да около ходили много, но по-моему так никто подробно и не раскрывал суть вопроса: Как вставить в создаваемый вами дистрибутив на основе 7z sfx модуля свою иконку?

Скоро надеюсь грянет обещанная Oleg_Sch гуи-оболочка, в которой можно будет легко и просто выбирать из каких файлов, с помощью какого модуля и его параметров делать инсталляшку, а также присваивать ей свою иконку... А пока, осмелюсь выложить не очень сложный алгоритм альтернативных, но вполне осуществимых действий, приводящих к желаемому результату.

Итак, для начала остановимся на необходимом программном обеспечении. Можно использовать множество программ для тех или иных целей, но я остановлюсь на тех, которыми пользовался сам - редактор ресурсов Resource Hacker и редактор иконок AWicons Pro. Русскую версию первого лучше всего взять на сайте www.samlab.ws а второй поискать с помощью какого-нибудь поисковика.

Итак, приступаем к работе:
- устанавливаем, регистрируем... короче добиваемся работоспособного состояния вышеназванных программ.
- запускаем Resource Hacker. Файл - Открыть - выбираем в нем любой исполняемый файл, иконку из которого требуется вытащить.
- идем в пункт Icon Group и находим в одной из его подпапок требуемый ресурс иконок (их может быть несколько - нужную нам группу выбираем визуально, смотря на отображающиеся в правой части окна программы иконки).
- нажимаем на нем правой кнопкой мыши и выбираем пункт меню Сохранить [Icon Group: ....], далее указываем путь и имя файла иконок.
- поскольку в получившемся файле иконок их очень много а нам хочется чтобы размер дистрибутива практически не увеличился, нам теперь нужно убрать лишние иконки из этого файла. Я воспользовался программой AWicons Pro - открыл файл извлеченных на предыдущем этапе иконок и нажимая последовательно на одной за другой иконках правой кнопкой мыши, выбирал в контекстном меню Удалить, пока не осталось всего две нужных мне иконки - 16Х16 и 32Х32 точки 32-битного цвета и сохранил этот обрезанный ресурс.
- далее снова открываем Resource Hacker. Файл - Открыть (тип файлов - Все файлы) выбираем наш модуль 7z sfx (он должен быть несжатым упаковщиком upx, если сжат - распаковать командой upx -d your_sfx.sfx, а после подмены иконок - запаковать командой upx --best your_sfx.sfx ;естесственно, что в этом случае заранее скачанный вами упаковщик upx должен находиться в одной папке с упаковываемым 7z sfx модулем) и жмем кнопку Открыть.
- снова заходим в пункт Icon Group, находим там подпапку с искомым ресурсом иконок, и нажав на самом ресурсе иконок правой кнопкой мыши из контекстного меню выбираем пункт Заменить ресурс ...
- в открывшемся окне щелкаем по кнопке Открыть значок, выбираем файл иконок, который был до этого предварительно обрезан и щелкаем по кнопке Заменить и далее Закрыть.
- после проделанных действий можно нажать Файл - сохранить как ... и указав нужную папку и имя вашего нового 7z sfx модуля выйти из программы.
- нужно убедиться что программа не забыла дописать расширение файла .sfx а если забыла дописать его ручками
- далее из командной строки или с помощью заботливо созданного командного файла следующего содержания COPY /b your_sfx.sfx + your_config.txt + your_7z.7z your_install.exe
где:
your_sfx.sfx - вами замучанный 7z sfx модуль
your_config.txt - вами созданный файл конфигурации модуля 7z sfx
your_7z.7z - ваш 7z архив с программой
your_install.exe - ваша получающаяся на выходе инсталляшка
вы сможете получить ваш инсталляционный файл с красивой иконкой!
Удачи!

P.S.: практика показала, что лучше всего оставить вообще только одну иконку - самую лучшую (48х48 32bit)

Последний раз редактировалось specialist, 15-12-2005 в 14:21.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:02, 08-12-2005 | #18

Название темы: Иконки