![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы |
|
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы
|
Ветеран Сообщения: 1579 |
Конструктор инсталляторов на основе модифицированного SFX модуля 7-Zip'а Довольно часто пользователи сталкиваются с необходимостью перепаковки дистрибутивов различных программ:
С другой стороны при выходе новой версии программы требуется пересобирать инсталлятор. Делать это удобнее с помощью запуска скрипта, который будет брать необходимую информацию из файла настроек, созданного заранее. Помимо этого скрипт должен считывать некоторую информацию из файлов программы (например версию программы) и изменять в соответствии с ней получаемый инсталлятор. Я не хочу устраивать "холливоры" на тему того, какой софт для создания инсталляторов лучше. Я хочу показать, как создавать полноценные инсталляторы на базе Модифицированного SFX модуля 7-Zip'а для установок от Oleg_Sch. Этот модуль в силу своей специфики имеет ряд ограничений, из-за которых нельзя добавить в получаемые инсталляторы некоторые функции (или делается это через одно место), доступные, например, в NSIS. С другой стороны синтаксис конфигурационного файла модуля довольно-таки несложный и этот файл достаточно просто получить из готового инсталлятора для изучения/корректировки. Давно известно, как создавать такие инсталляторы с помощью INF-файлов, но мне хотелось бы отказаться от них и использовать только сам модуль и встроенные в ОС средства (cmd, mshta, реестр). Итак, описание собственно конструктора: Перед началом работы необходимо создать папку SourceDir с файлами дистрибутива и положить рядом с ней файл настроек setting.ini и файл name.ico (name - задается в секции [SFX] файла setting.ini) с иконкой для инсталлятора. Файл setting.ini состоит из секций, в которых задаются параметры инсталлятора, пути для копирования/удаления файлов при установке, ключи реестра для добавления/удаления, параметры ярлыков и т.п. Синтаксис секций напоминает синтаксис секций INF-файлов. Все допустимые секцции с возможными параметрами приведены в файле settingSample.ini (папка !!!Tools) с комментариями. Также в папке !!!Tools есть файл Common.ini, в котором находятся настройки общие для всех создаваемых инсталляторов (перзаписываются настройками из файла setting.ini конкретного инсталлятора). Для создания инсталлятора запустите файл makeSFX7z.cmd из папки !!!Tools, указав в качестве параметра путь к папке с дистрибутивом программы. Для примера приведен дистрибутив архиватора 7-zip (положите папку 7z рядом с папкой !!!Tools и запустите файл make.cmd). Если запустить makeSFX7z.cmd из папки !!!Tools без указания пути к дистрибутиву, то будет создан тестовый инсталлятор Test.exe в паке !!!Tools. При запуске makeSFX7z.cmd с ключом saveconfig или при наличии в папке !!!Tools (для всех) или рядом с файлом setting.ini (для конкретного инсталлятора) файла с имнем saveconfig без расширения скомпилированный файл конфигурации будет сохранен в папке рядом с файлом setting.ini. !!!Внимание. Если при работе скрипта в консоле отображаются кракозябры. то в свойствах консоли требуется установить шрифт TrueType (Lucida Console, Consolas). Теперь подробнее о настройках и возможностях конструктора (также см. комментарии в settingSample.ini). В этой же теме я также буду выкладывать конструкторы для создания некоторых программ. Список:
История версий Скачать ЯДиск Скачать GoogleDrive |
|
------- Отправлено: 16:38, 06-02-2015 |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать raddy,
Посмотрел в чем затык. При ошибке распаковки лог-файл uniextract-*.txt зачем-то (это идет из оригинальной версии) преобразуется в uniextract_temp-*.txt при помощи cmd-команды type. Затем uniextract_temp-*.txt переименовывается с заменой в uniextract-*.txt. И вот тут происходит затык - файл почему-то оказывается заблокированным и не может быть открыт. Потом файл удаляется. Зачем нужно преобразование uniextract-*.txt -> uniextract_temp-*.txt -> uniextract-*.txt не понятно. Комментарий к этой операции "; Convert log to DOS format" Я думаю можно убрать это преобразование, что и сделаю в следующей версии. Для самостоятельного удаления надо удалить строки: ; Convert log to DOS format ; Преобразование лога в DOS формат RunWait($cmd & 'type ' & FileGetShortName($debugfile) & ' >' & FileGetShortName(EnvParse($debugdir)) & 'uniextract_temp' & $time & '.txt', EnvParse($debugdir), $consolewin) FileMove(FileGetShortName(EnvParse($debugdir)) & 'uniextract_temp' & $time & '.txt', $debugfile, 1) |
------- Отправлено: 22:43, 26-11-2015 | #91 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать Новая версмя 7z 15.12
Новая версия CCleaner 01.12.2015 - Обновлен CCleaner до версии 5.12.0.5431 - Обновлен winapp2.ini до версии v5.11.151026 Новая версия Universal Extractor 1.6.1.1015 (01/12/2015)
Новая версия Конструктора 01.12.2015 v1.16 - Добавлено формирование команды-пустышки, чтобы она собирала всякие левые ключи комстроки - Обновлен архиватор 7zip до версии 15.12 Также, в связи с обновлением Конструктора, обновлены все инсталляторы |
------- Отправлено: 20:32, 01-12-2015 | #92 |
Старожил Сообщения: 473
|
Профиль | Отправить PM | Цитировать Цитата ya158:
|
|
Отправлено: 18:15, 03-12-2015 | #93 |
Ветеран Сообщения: 1514
|
Профиль | Отправить PM | Цитировать Цитата:
|
|
------- Отправлено: 11:35, 16-12-2015 | #94 |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать Цитата regist:
Помимо этого, файл в любой кодировке хорошо открывается, например, AkelPad-ом. А вот что делать с заблокированным файлом, если оставить преобразование, я не знаю... |
|
------- Отправлено: 12:22, 16-12-2015 | #95 |
Ветеран Сообщения: 1514
|
Профиль | Отправить PM | Цитировать Цитата ya158:
|
|
Отправлено: 10:41, 22-12-2015 | #96 |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать regist,
Я готов отладить этот момент - нужен пример, когда uniextract-*.txt пишется в такой кодировке, что при его открытии кракозябры. |
------- Отправлено: 10:45, 22-12-2015 | #97 |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать Новая версия Universal Extractor
1.6.1.1016 (30/12/1015)
|
------- Отправлено: 00:35, 30-12-2015 | #98 |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать Новая версмя 7z 15.14
Новая версия BSplayer Pro 19.01.16 v1.3 - Обновление BSplayer Pro до 2.7.0.1080 Новая версия CCleaner 19.01.2016 - Обновлен CCleaner до версии 5.13.0.5460 - Обновлен winapp2.ini до версии v5.13.151221 Новая версия IZArc 19.01.2016 v1.2 - IZArc обновлен до 4.2.0.3564 Новая версия Universal Extractor 1.6.1.1016 (19/01/2016)
Новая версия Конструктора 01.12.2015 v1.16 - Виртуальный диск для запуска команд в 64-битной среде больше не используется. - Улучшена обработка параметра "PATH" в секциях для работы с реестром. - Исправлена ошибка (неправильно обрабатывалась секция [RegCheck]) - Обновлен модифицированный SFX модуль 7-Zip до версии 1.6.0.3819 - Обновлен архиватор 7-zip до версии 15.14 Также, в связи с обновлением Конструктора, обновлены все инсталляторы |
------- Отправлено: 22:11, 19-01-2016 | #99 |
Ветеран Сообщения: 1579
|
Профиль | Отправить PM | Цитировать Новая версия Universal Extractor
1.6.1.1018 (20/01/2016)
|
------- Отправлено: 19:42, 20-01-2016 | #100 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Модифицированный SFX модуль 7-Zip'а для установок | Oleg_Sch | Автоматическая установка Windows 2000/XP/2003 | 2018 | 12-06-2025 03:08 | |
GUI для модифицированного 7-Zip SFX модуля для установок | hobbeat | Автоматическая установка Windows 2000/XP/2003 | 259 | 09-10-2016 07:01 | |
Project SFX Config - GUI для создания конфигураций модифицированного модуля 7zip | Medic84 | Автоматическая установка Windows 2000/XP/2003 | 79 | 14-04-2014 22:04 | |
CMD/BAT - [решено] 7-zip. Командная строка. Как изменить иконку sfx архива? | Centrinar | Скриптовые языки администрирования Windows | 1 | 01-08-2011 03:53 | |
Создание silent 7-zip sfx | mitiya | Автоматическая установка Windows 2000/XP/2003 | 17 | 01-03-2011 22:14 |
|