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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы

Ответить
Настройки темы
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы

Ветеран


Автор проектов


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


Конфигурация

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


Изменения
Автор: ya158
Дата: 13-12-2018
Описание: Новая версия Universal Extractor
Конструктор инсталляторов на основе модифицированного SFX модуля 7-Zip'а


Довольно часто пользователи сталкиваются с необходимостью перепаковки дистрибутивов различных программ:
  1. Удаление из дистрибутива ненужных довесков (панелей для браузеров, "улучшателей", "ускорителей", Adware и т.д.).
  2. Удаление ненужных языковых модулей и т.п.
  3. Добавление в дистрибутив плагинов, аддонов и т.п.
  4. Настройку программы "под себя".
  5. Добавление личной информации (например лицензии в реестр или в дополнительный файл)
  6. Объединение в дистрибутиве различных версий программы (например для 32-х и 64-битной платформ) и т.д.
При этом, как правило, такой перепакованный/обновленный дистрибутив запускается в "тихом" режиме автоматически сразу после установки новой операционной системы. Если же дистрибутив запускается не в "тихом" режиме, то обычно не требуется принятие лицензии, выбор устанавливаемых компонентов или выбор местоположения ярлыков. С моей точки зрения единственным полезным выбором является выбор папки установки. Поэтому для подобных дистрибутивов не требуется продвинутый/навороченный интерфейс инсталлятора.

С другой стороны при выходе новой версии программы требуется пересобирать инсталлятор. Делать это удобнее с помощью запуска скрипта, который будет брать необходимую информацию из файла настроек, созданного заранее. Помимо этого скрипт должен считывать некоторую информацию из файлов программы (например версию программы) и изменять в соответствии с ней получаемый инсталлятор.

Я не хочу устраивать "холливоры" на тему того, какой софт для создания инсталляторов лучше. Я хочу показать, как создавать полноценные инсталляторы на базе Модифицированного 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).
читать дальше »

I. Копирование файлов на жесткий диск. Возможно объединение 32-х и 64-х битных версий программы. Инсталлятор автоматически определит битность ОС и установит соответствующую версию программы.
  1. Секция [SFX].
    • 1.1. Параметр SourceDir задает папку с дистрибутивом программы. В этой папке должны находится все файлы устанавливаемой программы, общие для 32-х и 64-х битных версий. Файлы, предназначенные только для 32-х битной версии программы распалагаются в подпапке SourceDir\!x32, для 64-х битной - в SourceDir\!x64. Если папка SourceDir не будет найдена, то скрипт выдаст сообщение об этом и прервет свою работу.

      1.2. Параметр InstallDir задает папку в %ProgramFiles%, в которую будет установлена программа (может быть изменена после запуска инсталлятора). После копирования файлов в %ProgramFiles% проверяется битность ОС и при наличии подпапок !x32 и !x64, файлы из них копируются с заменой в InstallDir. Поэтому, например, если для дистрибутивы для 32-х и 64-х битной версий отличаются только одним основным исполняемым файлом (задается параметром FileName), то его 32-х битная версия помещается в SourceDir, а 64-х битная - в SourceDir\!x64\. Также по наличию подпапки !x64 определяется есть ли в дистрибутиве 64-х битная версия и на 64-х битных системах предлагается установка в %ProgramW6432%. Если папки !x64 нет, то и на 32-х и на 64-х битных системах предлагается установка в %ProgramFiles%.

      1.3. Параметр Pfx64 дает возможность 32-х битную программу (без подпапки !x64) на 64-х битной системе предлагается установить в подпапку в %ProgramW6432%, а не в %ProgramFiles%.
  2. Секция [CopyDel].
    Предназначена для копирования/удаления файлов и папок. С помощью данной секции возможно копирование и удаления любых файлов и папок на жестком диске, поэтому будьте аккуратны и не укажите для удаления, например, папку %WINDIR%.

II. Операции с реестром. Поскольку используется 32-битный модуль, то на 64-битных системах он обращается к 32-битным версиям reg, mshta и т.д. Поэтому, например, происходит запись в куст реестр HKLM\SOFTWARE\Wow6432Node\ вместо HKLM\SOFTWARE\. При наличии 64-битной версии программы (папка !x64 присутствует) или указан параметр REgx64=1 будут использоваться 64-битные версии reg, mshta (подробнее - в файле makeSFX7z.cmd). Если используется только 32-битная версия программы (папка !x64 отсутствует или REgx64 не равен 1), то при установке программы используются 32-битные версии reg, mshta.
  1. Секция [SFX], параметр REgx64.
    Если этот параметр равен 1, то инсталлятор 32-х битной версии программы (папка !x64 отсутствует) будет вносить изменения на 64-х битной ОС в куст реестр HKLM\SOFTWARE\ вместо HKLM\SOFTWARE\Wow6432Node\
  2. Секции [RegAddInstal] и [RegDelInstal].
    Предназначена для добавления и удаления записей реестра при установке ппрограммы.
  3. Секции [RegAddUninstal] и [RegDelUninstal].
    Предназначены для добавления м удаления записей реестра при деинсталляции программы.
  4. Секция [RegCheck].
    С помощью данной секции возможно сохранение значения записи реестра для последующего восстановления при деинсталляции программы. Может быть использована для восстановления ассоциаций файлов после деинсталляции программы. Принцип работы:
    Перед внесением изменений в реестр инсталлятор сохраняет значение valueOLD записи реестра Parameter по заданному пути HKXX\PATH\. Если при деинсталляции текущее значение записи valueNEW не равняется заданному значению value, то деинсталлятор запись не изменяет. Если valueNEW равняется value, то запись изменяется на valueOLD. Если ДО установки программы запись Parameter отсутствовала, то в случае valueNEW=value запись Parameter удаляется.

III. Регистрация и отмена регистрации элементов управления OLE, например ActiveX и библиотек DLL.
  1. Секция [RegisterOCX].
    Предназначена для регистрации элементов управления OLE. В этой секции указываетмя путь, имя и расширение к библиотеке или злементу ActiveX, кот. необходимо зарегистрировать. При деинсталляции будет произведена отмена регистрации данных файлов.
  2. Секция [UnregisterOCXs].
    Предназначена для отмены регистрации элементов управления OLE при деинсталляции.
    Таким образом при инсталляции регистрируются файлы, указанные только в секции [RegisterOCX]. При деинсталляции регистрация отменяется для файлов, указанных и в секции [RegisterOCX] и в секции [UnregisterOCXs].

IV. Добавление строк
Секция [AddString].
Предназначена для добавления строк в любой текстовый файл. Можно использовать для изменения ini-файлов настроек.

V. Запуск программ.
  1. Секция [RunPreIninstall].
    Предназначена для запуска исполнительных файлов перед установкой программы. Все пути с пробелами должны быть заключены в двойные кавычки.
  2. Секция [RunAfterIninstall].
    Предназначена для запуска исполнительных файлов после установки программы. Все пути с пробелами должны быть заключены в двойные кавычки.
  3. Секция [RunPreUninstall].
    Предназначена для запуска исполнительных файлов перед деинсталляцией программы. Все пути с пробелами должны быть заключены в двойные кавычки.
  4. Секция [RunAfterUninstall].
    Предназначена для запуска исполнительных файлов после деинсталляции программы. Все пути с пробелами должны быть заключены в двойные кавычки.

VI. Ярлыки.
Секции [Shortcut_n]. n=1,2,3...
Предназначены для добавления ярлыков файла (для каждого файла - своя секция со своим номером n) на Рабочий стол, в меню "Пуск -> Программы", в меню кнопки "Пуск", в контекстном меню "Отправить", в папке "Автозагрузка" и в панели быстрого запуска. Также возможно закрепить программу на панели задач (для Vista, 7, 8, 10). Ярлыки возможно создавать как для текущего пользователь, так и для всех пользователей, а также указывать в свойствах ярлыка, что программа должна запускаться от имени администратора. При деинсталяции все ярлыки удаляются.
  1. Если значение параметра Desktop, Programs, Star, SendTo, Autostart, QL равно 1, то ярлыки будут созданы на Рабочем стол, в меню "i]Пуск -> Программы[/i]", в меню кнопки "Пуск", в контекстном меню "Отправить", в папке "Автозагрузка" и в панели быстрого запуска соответственно. Если TaskBar=1, то файл будет закреплен на панели задач (для Vista, 7, 8, 10).
  2. Ярлыки будут созданы для всех пользователей, если AllUser=1, и для текущего при AllUser=0
  3. Ярлык для запуска прграммы от имени Администратора, если Administrator=1.
  4. Остальные параметры (src_file_path, command_line_for_file, folder_for_shortcut, description, shortcut_name, working_directory, icon_file и icon_index) описаны в документации к Модифицированному SFX модулю 7-Zip'а для установок (команда Shortcut). Единственное замечание - src_file_path может быть опущен. В этом случае ярлыки создаются для FileName (см. секцию [SFX] в settingSample.ini).

VII. Деинсталляция.
В отличии от специализированных программ для создания инсталляторов модифицированный модуль самостоятельно не создает записей в реестре и/или специальных файлов для деинсталляции. Обычно для этой цели с помощью команды RunProgram модуля создается раздел с именем программы в кусте реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall с записями, которые задают пункт для деинсталляции программы в апплете "Установка и удаление программ" (или "Программы и компоненты"). С помощью записи UninstallString задается путь и имя файла для деинсталляции программы. Чаще всего для этой цели используется inf-файл или батник (при использовании InnoSetup или NSIS используется специально созданный файл). Я решил отказаться от использования дополнительных файлов и записывать команды для деинсталляции непосредственно в самом реестре. Используются как cmd, так и VBScript (mshta). Поскольку существуют ограничения на длину значения записи UninstallString, длину записи в mshta и т.п., то созаются дополнительные параметры в HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<имя программы>. Имя раздела <имя программы> может быть любым. Я принял его равным ProgName (задается в секции [Message]).
  1. Секция [UninstallReg].
    Предназначена для задания информации, которая видна в пункте для деинсталляции программы в апплете "Установка и удаление программ" (или "Программы и компоненты").
  2. Секция [DelUninstal].
    Предназначена для удаления файлов и папок при деинсталляции. Папка InstallDir с файлами программы удаляется автоматически (если параметр NoDelInstallDir в секции [SFX] не равен 1) и здесь её указывать не нужно. Также автоматически проверяется папка, в которой находится InstallDir и, если она пуста, то удаляется (если NoDelInstallDir не равен 1). Например, если программа устанавливается в %ProgramFiles%\Folder1\Folder2, то при удалении автоматически удаляется Folder2 и, если пуста Folder1, то тоже удаляется.
    С помощью данной секции возможно удаления любых файлов и папок на жестком диске, поэтому будьте аккуратны и не укажите для удаления, например, папку %WINDIR%.
  3. Секция [PreUninstalProg].
    Если необходимо перед деинсталляции программы деинсталлировать какую-нибудь другую программу (например, плагин или аддон), то в эту секцию записываются имена разделов в кусте реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Команды для удаления берутся из записей UninstallString, а имена программ для диалогов, в которых предупреждается о необходимости удаления - из записей DisplayName указанных в этой секции разделов.

VIII. Добавление языковых и/или платформенных секций.
Как известно файл конфигурации модифицированного SFX модуля 7-Zip'а может после основной секции содержать дополнительные секции (подробнее - в справке к модифицированному SFX модуля 7-Zip'а). Для их добавления служит файл end_of_cfg.txt, который ищется в той же папке, что и setting.ini. Файл end_of_cfg.txt должен соответствовать требованиям, предъявляемым к файлу конфигурации модифицированного SFX модуля 7-Zip'а.

IX. Проверки перед распаковкой дистрибутива.
  1. Проверка на повторный запуск инсталлятора. Если в процессе установки инсталлятор будет запущен повторно, то вторая копия процесса установки автоматически завершится с выводом окна пердупреждения.
  2. Проверка на предыдущую неудачную установку. Если в процессе установки обнаружена предыдущая неудачная установка (определяется по наличию файла %%T\UnCom.~), то она будет удалена (инструкции для корректной деинсталляции берутся из %%T\UnCom.~) и работа инсталлятора прекращена.
  3. Секция [Check] - предназначена для проверки версии Windows, на которой запускается инсталлятор, а также наличия или отсутствия
    • файлов
    • записей реестра
    • определенной версии Microsoft .NET Framework
    • определенной версии Microsoft Visual C++ Redistributable Package
    Формат записей в этой секции приведен в settingSample.ini. Также см. параметры NoDotNet, AlreadyDotNet, NeedRegistry, AlreadyRegistry, NeedFile и AlreadyFile в секции [Message].


В этой же теме я также буду выкладывать конструкторы для создания некоторых программ. Список:
  1. 7-zip 16.04
  2. Ashampoo Uninstaller 4.3.0.0
  3. BSplayer Pro 2.7.0.1080
  4. CCleaner 5.29.0.6033
  5. ConsoleZ 1.15.0.15253
  6. FileMenu Tools 6.8.0.0
  7. HashTab 5.2.0.0
  8. ImgBurn 2.5.8.0
  9. IZArc 4.3.0.3856
  10. Paint.NET 4.0.19, Paint.NET 3.5.11 и плагины
  11. Regshot 2.0.1.70
  12. Resource Hacker 4.5.30.180
  13. Scanner 2.13
  14. Universal Extractor 1.6.1.1035 (13/12/2018) mod by koros aka ya158
  15. Набор утилит для удаления SpyWare, AdvWare, руткитов, троянов, червей и т.п. v1.2

История версий

Скачать ЯДиск Скачать GoogleDrive

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Отправлено: 16:38, 06-02-2015

 

Ветеран


Автор проектов


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

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


Цитата regist:
насколько я слышал он погиб а авто-аварии. »
Я тоже это слышал, но точного подтверждения не видел...

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Отправлено: 16:41, 18-10-2016 | #111



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Автор проектов


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

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


Описание конструктора Universal Extractor-а
Продолжение истории изменений Universal Extractor после оригинальной версии 1.6.1
читать дальше »

1.6.1.1035 (13/12/2018)
  1. Исправлена ошибка (элементы в окне "Настройки" налезали друг на друга) (спасибо AlexM2222).
  2. Изменено: при выборе опции "Поверх всех окон" этот атрибут добавляется всем окнам (msgbox()).
  3. Обновлен Windows Installer XML Toolset Decompiler до версии 3.11.2318.
  4. Обновлен Enigma Virtual Box до версии 0.54а
1.6.1.1034 (11/12/2018)
  1. При анализе EXE-файла теперь идет проверка на WiX installer по фразе 'WiX ' вместо 'WiX installer'.
  2. Обновлен Detect-It-Easy до версии 2.01 (спасибо hors за создание консольной версии без внешних зависимостей).
  3. Обновлен Exeinfo PE до версии v0.0.5.1 - 2018 ( 1020 + 68 signatures x64).
  4. Обновлены плагины для 7z: Modern7z до версии 1.8.4, eDecoder до версии 1.20.2.
  5. Изменена структура меню GUI.
1.6.1.1033 (05/12/2018)
  1. Исправлена ошибка (при распаковке InstallShield CAB (Data1.hdr, Data1.cab, Data2.cab), путь к которым содержит юникодные символы, во временную папку копировался только один файл, а не три).
  2. unzip заменен на версию 6.10c23 с исправлением уязвимостей CVE-2018-1000031, CVE-2018-1000032, CVE-2018-1000033, CVE-2018-1000034, CVE-2018-1000035 (спасибо rinat84 и Pasha_ZZZ).
  3. Обновлен Less MSIerables (lessmsi) до версии 1.6.3.
  4. Исправлена ошибка (неправильно создавался лог при неудачной распаковке).
  5. Изменен алгоритм распаковки с помощью unzip/7zip.
1.6.1.1032 (21/08/2018)
  1. Оптимизация скрипта (функция EnvParse() изменена, Секция Case "iso" в Func extract($arctype, $arcdisp) удалена)(спасибо nikzzzz).
  2. Исправлена ошибка (при удачной распаковке в лог попадала строка "Распаковка %s в %s успешно завершена" без раскрытия %s (спасибо nikzzzz).
  3. Изменена иконка сообщения об удачной распаковке (спасибо nikzzzz).
  4. Добавленв пункт "Поверх всех окон" меню Настройки.
  5. Обновлен Exeinfo PE до версии v0.0.5.0 - 2018 (1015 + 67 signatures x64).
  6. Обновлен innounp до версии 0.47.
1.6.1.1031 (26/06/2018)
  1. Добавлено: Вывод сообщения об удачной распаковке про включенной опции "Уведомлять об удачной распаковке" в меню Настройки.
  2. Исправлены ошибки (не был выполнен п 6. из версии 1.6.1.1030)
1.6.1.1030 (13/06/2018)
  1. Добавлено определение Wix installer по сигнатуре секции .wixburn (2E7769786275726E), также добавлен Wix Installer.1.sg (спасибо rinat84). Исправлено ложное определение Wix installer-а с помощью утилит Exeinfo PE, Detect-It-Easy, PEiD, как InstallShield.
  2. Изменен алгоритм проверки на то, что тестируемый файл является 64-битным (спасибо rinat84).
  3. Обновлен 7-zip до версии 18.05, модифицированный для извлечения скрипта NSIS. Из 7z.dll убраны все иконки и добавлены плагины (Modern7z, Iso7z, eDecoder, Thumbs7z, Lzip7z, Asar7z)(спасибо rinat84). 7-zip с плагинами перенесен из папки bin в папку bin\7z. При установке происходит удаление 7z.dll и 7z.exe из папки bin. Если по какой-либо причине удаление неудачно - удалите эти два файла в ручную.
  4. Добавлена возможность извлечения эскизов из файлов Thumbs.db и thumbcache.db. Определяются по имени и расширению файлов "Thumbs.db", "ehthumbs.db", "ehthumbs_vista.db", "Image.db", "Video.db", "TVThumb.db", "musicThumbs.db", "thumbcache_16.db", "thumbcache_32.db", "thumbcache_48.db", "thumbcache_96.db", "thumbcache_256.db", "thumbcache_768.db", "thumbcache_1024.db", "thumbcache_1280.db", "thumbcache_1600.db", "thumbcache_1920.db", "thumbcache_2560.db", "thumbcache_sr.db", "thumbcache_exif.db", "thumbcache_wide.db", "thumbcache_wide_alternate.db" и "thumbcache_custom_stream.db".
  5. Изменено - распаковка архивов lz (lzip) теперь производится с помощью 7-zip. Утилита lunzip удалена.
  6. Изменено - при распаковке образов дисков (iso, bin, isz, mdf, nrg) теперь производится с помощью 7-zip. Если 7-zip не справляется с распаковкой, то распаковка производится с помощью TotalObserver. Если в папке начначения появляются файлы iso, то они также распаковываются.
  7. Добавлена возможность распаковки mht и mhtml с помощью 7-zip.
  8. Добавлено: Распаковка архивов с методом сжатия Asar, Brotli, LZ4, LZ5, Lizard, Zstandard, (определяются по расширению asar, br, lz4, lz5, liz, zst соответственно), и распаковывается аналогично с помощью 7-zip.
  9. Добавлено: Если папка назначения оказывается пустой, то она удаляется.
  10. Исправлена ошибка (неправильная строка запуска для распаковки файлов .img) (спасибо rinat84).
  11. Удален iso.wcx. Файлы, для распаковки которых применялся iso.wcx, теперь распаковываются с помощью 7-zip и TotalObserver.
1.6.1.1029 (16/04/2018)
  1. Исправлена ошибка (для rar-архивов - неправильное определение с помощью TrID и распаковка запароленных)(спасибо rinat84).
1.6.1.1028 (09/04/2018)
  1. Добавлено: Распаковка инсталляторов сделанных с помощью Ghost Installer Studio. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'Ghost Installer' и распаковывается с помощью xor v0.2 (автор Luigi Auriema) (спасибо rinat84).
1.6.1.1027 (14/03/2018)
  1. Исправлена ошибка (неправильно обрабатывался debugfile) (спасибо rinat84).
  2. Исправлена ошибка (для корректной работы утилиты pdftotext добавлены ключи -nopgbrk -enc UTF-8)
  3. Добавлено: Распаковка архивов lz (lzip) с помощью утилиты lunzip. Определяется по расширению lz, а также утилитой TrID по фразе 'LZIP compressed archive', утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'LZIP'.
  4. Обновлен Exeinfo PE до версии vv0.0.4.9 - 1008 - 64 signatures.
  5. Обновлен 7-zip до версии 18.03, модифицированный для извлечения скрипта NSIS.
  6. Обновлен Pea до версии 0.64.
  7. Обновлена база TrIDDefs.TRD: 9762 типов файлов, 12.03.18.
1.6.1.1026 (12/02/2018)
Номер версии не менялся, т.к. сам Universal Extractor не изменился.
  1. Обновлен 7-zip до версии 18.01, модифицированный для извлечения скрипта NSIS.
  2. Добавлена библиотека LessIO.dll - необходима для работы Less MSIerables (lessmsi) (спасибо f0rt).
  3. Detect It Easy заменен на консольный, который не нуждается в qt dll-ках - эти библиотеки удалены (смасибо rinat84)
  4. Обновлен Exeinfo PE до версии ver.0.0.4.8 II - 2017 ( 999 - 64 signatures ).
1.6.1.1026 (22/11/2017)
  1. Если папка назначения существует и она пустая, то инсталлятор распаковывается в нее без запроса.
  2. Обновлен 7-zip до версии 17.01 beta, модифицированный для извлечения скрипта NSIS.
  3. Обновлен Windows Installer XML Toolset Decompiler до версии 3.11.1701.0
  4. Обновлен Enigma Virtual Box до версии 0.41а
  5. Обновлен Exeinfo PE до версии v0.0.4.7 Final - 992 + 60 signatures.
  6. Обновлен Less MSIerables (lessmsi) до версии 1.6.1.
  7. Обновлены утилиты pdfdetach, pdfimages и pdftotext до версии 4.0
  8. Обновлен Pea до версии 0.63.
  9. Обновлена база TrIDDefs.TRD: 9329 типов файлов, 20.11.17.
  10. Обновлен UPX до версии v3.94w.
1.6.1.1025 (24/04/2017)
  1. Добавлено: Распаковка инсталляторов Adobe® Flash® Player Installer. Определяется по наличию в свойствах файла (Название продукта) слов "Adobe", "Flash" и "Player Installer" и распаковывается с помощью AFPIUnpack.exe (автор novice2)
1.6.1.1024 (19/04/2017)
  1. Инсталляторы NSIS (определяются анализаторами по фразе "Nullsoft") распаковываются с помощью 7-zip с ключом -aou, что автоматически переименовывает извлекаемый файл, если файл с таким же именем уже есть в папке назначения.
  2. Обновлен Pea до версии 0.61.
  3. Обновлен ZPAQ до версии 7.15.
1.6.1.1023 (03/03/2017)
  1. Исправлены ошибки (спасибо nikzzzz).
  2. Добавлено: Распаковка файлов mhtml. Определяется по расширению mhtml и распаковывается аналогично mht.
  3. Добавлена возможность распаковки скомпилированных скриптов AutoIt x64 (спасибо nikzzzz).
  4. Обновлен Exeinfo PE до версии v0.0.4.5 Final - 945 + 57 signatures.
  5. Обновлен UPX до версии v3.93w.
  6. Обновлен Pea до версии 0.59.
  7. Обновлена база TrIDDefs.TRD: 8254 типов файлов, 02.03.17.

1.6.1.1022 (31/10/2016)
  1. Исправлена ошибка (возникала при попытке распаковать файлы, упакованные ASPack-ом)
  2. Fixed swf extraction ignoring some images and sounds (исправлена ошибка пропуска некоторых изображений и звуков из swf) отсюда
  3. Изменен GUI так, чтобы кнопки не налезали на границу окна.

1.6.1.1021 (18/10/2016)
  1. Исправлена ошибка (не сохранялись настройки, если была выбрана не существующая папка для сохранения логов).
  2. Исправлена ошибка (не сохранялось имя папки для сохранения логов).
  3. Обновлен 7-zip до версии 16.04, модифицированный для извлечения скрипта NSIS (спасибо pasynok)
  4. Обновлен перевод Bulgarian (Български)
  5. Обновлен перевод Ukranian (Український)
  6. Добавлено: Распаковка файлов PDF (Adobe Portable Document Format) с помощью утилит pdfdetach, pdfimages и pdftotext. Такие файлы определяются по расширению pdf, а также утилитой TrID по фразе '(.PDF) Adobe Portable Document Format', утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'PDF'.
  7. Обновлен Exeinfo PE до версии v0.0.4.4 - 962 + 50 signatures от 09.09.2016

1.6.1.1021 (18/10/2016)
  1. Исправлена ошибка (не сохранялись настройки, если была выбрана не существующая папка для сохранения логов).
  2. Исправлена ошибка (не сохранялось имя папки для сохранения логов).
  3. Обновлен 7-zip до версии 16.04, модифицированный для извлечения скрипта NSIS (спасибо pasynok)
  4. Обновлен перевод Bulgarian (Български)
  5. Обновлен перевод Ukranian (Український)
  6. Добавлено: Распаковка файлов PDF (Adobe Portable Document Format) с помощью утилит pdfdetach, pdfimages и pdftotext. Такие файлы определяются по расширению pdf, а также утилитой TrID по фразе '(.PDF) Adobe Portable Document Format', утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'PDF'.
  7. Обновлен Exeinfo PE до версии v0.0.4.4 - 962 + 50 signatures от 09.09.2016

1.6.1.1020 (30/09/2016)
Изменения навеянные сборкой от Bioruebe
  1. При распаковке файла без расширения теперь предлагается распаковать его в папку с именем исходного файла, к которому добавлено "_TERM_UNPackED" (см. текущий языковой файл).
  2. Добавлено создание расширенного лога. Сохранять или не сохранять расширенный лог, а также место сохранения такого лога, можно выбрать из меню Настройки. Также в этом меню можно выбрать сохранять ли расширенный лог всегда или только при анализе/распаковке файлов.
  3. Изменена обработка запаролленых файлов. Теперь вначале проверяются пароли из файла passwords.txt, находящегося в папке Universal Extractor-а. Если ни один из них не подходит, то вывадится окно с предложением ввести пароль. Если введеный пароль не подходит то окно выводится сснова. Если в этом окне нажать кнопку "Cancel", то выводится сообщение о невозможности распаковки и Universal Extractor прекращает свою работу.
    Также в меню Настройки добавлен пункт "Сохранять пароль в списке паролей", позволяющие сохранить введенный пароль, с помощью которого удалось распаковать запаролленыый файл, в файл passwords.txt.
    В комплект инсталлятора Universal Extractor-а входит файл SamplePasswords.txt со стандарьными паролями, принятыми на форумах ruboard и SamLab. Если при инсталляции в папке установки не присутствует файл passwords.txt, то SamplePasswords.txt переименовывается в passwords.txt, иначе SamplePasswords.txt удаляется.
  4. Добавлена обработка файлов, содержащих Юникодные символы в имени или в пути. Такие файлы перемещаются/копируются в папку %Temp% и обрабатываются в ней.
  5. Добавлено: При анализе EXE-файла утилитами Exeinfo PE, Detect-It-Easy, PEiD теперь идет проверка на WinAce по фразе 'WinAce / SFX Factory'.
  6. Добавлено: При анализе EXE-файла утилитами Exeinfo PE, Detect-It-Easy, PEiD теперь идет проверка на Caphyon Advanced Installer по фразе 'Advanced Installer'.
  7. Добавлено: При анализе EXE-файла утилитами Exeinfo PE, Detect-It-Easy, PEiD теперь идет проверка на FreeArc по фразе 'FreeArc'.
  8. Добавлено: При анализе EXE-файла утилитами Exeinfo PE, Detect-It-Easy, PEiD теперь идет проверка на файл .xz по фразе 'XZ compressed data', а при анализе утилитой TrID по фразе 'xz container'.
  9. Добавлено: При анализе EXE-файла утилитой TrID теперь идет проверка на файл .zpaq по фразе 'ZPAQ compressed archive'.
  10. Добавлено: При анализе EXE-файла утилитами Exeinfo PE, Detect-It-Easy, PEiD теперь идет проверка на файл .dmg по фразе '.dmg Mac OS', а при анализе утилитой TrID по фразе 'Disk Image (Macintosh)'.
  11. Добавлено: При анализе EXE-файла утилитами Exeinfo PE, Detect-It-Easy, PEiD теперь идет проверка на файл .isz по фразе 'ISZ', а при анализе утилитой TrID по фразе 'ISo Zipped format'.
  12. Добавлено: Распаковка файлов созданных Excelsior Installer. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'Excelsior Installer' и распаковывается методом запуска исходного файла с ключами /batch /no-reg /no-postinstall /dest.
  13. Добавлено: Распаковка файлов созданных Smart Install Maker. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'Smart Install Maker' и распаковывается с помощью Smart Install Maker unpacker 1.0.
  14. Добавлено: Распаковка файлов Android boot image. Определяется анализаторами по фразе 'Android boot image' и распаковывается с помощью запуска исходного файла с ключом --unpack-bootimg.
  15. Добавлено: Распаковка архивов ALZip. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе '.ALZ ALZip' и утилитой TrID по фразе 'ALZip compressed archive' и распаковывается с помощью unalz v0.64.
  16. Добавлено: Распаковка файлов Enigma Virtual Box. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразам 'Enigma Virtual Box' и распаковывается с помощью EnigmaVBUnpacker v0.35.
  17. Добавлено: Распаковка файлов SQX SFX. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'Sqx' и распаковывается с помощью плагина TotalSQX.
  18. Добавлено: Распаковка файлов ThinApp/Thinstall. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразам 'ThinyApp Packager', 'Thinstall' или 'VMware ThinApp' и распаковывается с помощью h4sh3m Virtual Apps Dependency Extractor.
  19. Добавлено: Распаковка файлов Microsoft SFX CAB. Определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'Microsoft SFX CAB' и распаковывается с помощью 7-zip.
  20. Добавлено: Распаковка файлов Digital G Codec Archiver. Определяется утилитой TrID по фразе 'DGCA Digital G Codec Archiver', утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'DGCA' и распаковывается с помощью dgcac.exe (данная утилита не дает возможности распаковать запароленный архив, если в пароле присутствуют пробелы).
  21. Добавлено: Распаковка SWF-файлов. Определяется утилитой TrID по фразе 'Macromedia Flash Player', утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'SWF' и распаковывается с помощью swfextract.exe.
  22. Добавлено: Распаковка файлов, которые определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'InstallAware' с помощью 7-zip.
  23. Добавлено: Распаковка файлов, которые определяется утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'WiX Installer' с помощью Windows Installer XML Toolset Decompile.
  24. Добавлено: Распаковка образов дисков DAA (Direct Access Archive) и GBI (gBurner Images), созданный программой PowerISO и программой gBurner путем преобразования в .iso с помощью утилиты daa2iso. Такие файлы определяются утилитой TrID по фразе 'PowerISO Direct-Access-Archive' или 'gBurner Image' и утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразам 'PowerISO Direct-Access-Archive' и 'GBI'.
  25. Добавлено: Распаковка образов дисков UIF (Universal Image Format), созданный программой MagicISO путем преобразования в .iso с помощью утилиты uif2iso. Такие файлы определяются по расширению uif, а также утилитой TrID по фразе 'Magic ISO Universal Image Format'.
  26. Изменено: При анализе файла RPM Linux Package утилитой TrID теперь идет проверка по фразе '(.RPM) RPM Package' вместо 'RPM Linux Package'.
  27. Добавлена проверка раздела реестра HKEY_CURRENT_USER\Software\ExEi-pe до работы утилиты Exeinfo PE. Если данный раздел отсутствует до запуска Exeinfo PE, то после работы Exeinfo PE он удаляется. Если этот раздл есть в реестре, то после работы Universal Extractor-а все значения параметров этого раздела восстанавливаются.
  28. Обновлен Exeinfo PE до версии v0.0.4.4 - 962 + 50 signatures. В новой версии добавлена возможность вывода в лог-файл информации из поля "Инфа ламерам-Подсказка-Инфа по распаковке", а также информация, получаемая при использовании внешней базы данных из userdb.txt. Это теперь используется в Universal Extractor-е. Также на время работы Universal Extractor-а принедительно включеется "Ignore EXE errors".
  29. Заменен распаковщик архивов KGB на KGB Archiver 2 Technology Preview console 1.0.0.2.
  30. Заменена распаковка файлов arj с помощью arj.exe на распаковку с помощью 7-zip.
  31. Заменен Simple "One-Click" MSI Unpacker Script Last update: April, 2014 (моя модификация оригинального скрипта) (MSIUnPack.vbs, jcabxmsi.exe) на MSI Unpacker from JSWare (Last update: April, 2014) (jsMSIx.exe)
  32. Заменена утилита tee на утилиту mtee 2.21.
  33. Обновлен 7-zip до версии 16.03, модифицированный для извлечения скрипта NSIS (спасибо pasynok)
  34. Обновлен CDIrip до версии 0.6.3.
  35. Оптимизирована распаковка образов дисков, при которой используется преобразование в .iso.
  36. Убрана проверка на наличие опциональных распаковщиков Expander.exe, xace.exe, kgb_arch_decompress.exe и pea.exe - эти файлы присутствуют в данном форке постоянно.
  37. Добавлена проверка на правильность использования ключа /lang.
  38. Оптимизирован скрипт. В том числе: check7z(), checkArj(), checkIE(), checkInno(), checkNSIS(), filescan(), diescan(), определение Microsoft CAB по расширению 'cab', обработка "ctar", "iscab" в extract() без использования debugfile; где возможно заменены конструкции If...ElseIf...Else...EndIf и Select...Case...EndSelect на Switch...Case...EndSwitch (основание; основание; основание) определение списка языковых файлов перенесено в процедеру создания GUI.
  39. Обновлены English.ini, Russian.ini, Chinese (Simplified).ini.
  40. Исправлены мелкие ошибки.


Расширенную версию Universal Extractor-a можно найти на руборде.

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Последний раз редактировалось ya158, 13-12-2018 в 12:49. Причина: Новая версия

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

Отправлено: 17:30, 18-10-2016 | #112


Ветеран


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

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


Цитата ya158:
Исправлена ошибка (не сохранялись настройки, если была выбрана не существующая папка для сохранения логов). »
Настройки сохраняются, но выставленный путь к логам поменять не удаётся, постоянно сбрасывается в дефолт(ини-файл удалял, заново "настраивал" - тоже самое).

ps. Хотелось бы, раз уж пользователь указывает свой путь к логам - то лучше настройки не сбрасывать, а воссоздавать путь, если даже нужные каталоги отсутствуют.
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:36, 18-10-2016 | #113


Ветеран


Автор проектов


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

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


raddy,
Спасибо за найденную ошибку. Поправил. Перевыложил. Версию не правил, т.к. нашлась и поправилась ошибка оперативно...

Новая версмя 7z 16.04

Новая версия Universal Extractor
1.6.1.2021 (18/10/2016)
  1. Исправлена ошибка (не сохранялись настройки, если была выбрана не существующая папка для сохранения логов).
  2. Исправлена ошибка (не сохранялось имя папки для сохранения логов).
  3. Обновлен 7-zip до версии 16.04, модифицированный для извлечения скрипта NSIS (спасибо pasynok)
  4. Обновлен перевод Bulgarian (Български)
  5. Обновлен перевод Ukranian (Український)
  6. Добавлено: Распаковка файлов PDF (Adobe Portable Document Format) с помощью утилит pdfdetach, pdfimages и pdftotext. Такие файлы определяются по расширению pdf, а также утилитой TrID по фразе '(.PDF) Adobe Portable Document Format', утилитами Exeinfo PE, Detect-It-Easy, PEiD по фразе 'PDF'.
  7. Обновлен Exeinfo PE до версии v0.0.4.4 - 962 + 50 signatures от 09.09.2016

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы

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

Отправлено: 23:20, 18-10-2016 | #114


Ветеран


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

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


Цитата ya158:
1.6.1.2021 (18/10/2016) »
При распаковке aspack вылетает ошибка, версия распаковщика роли не играет. (логи не пишет)
Скрытый текст


ps. Распаковщики по отдельности отрабатывают нормально.
Это сообщение посчитали полезным следующие участники:

Отправлено: 04:54, 29-10-2016 | #115


Ветеран


Автор проектов


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

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


raddy,
Спасибо. Буду исправлять. Можно пример файла, на котором вылетает ошибка.

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Отправлено: 10:51, 29-10-2016 | #116


Ветеран


Автор проектов


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

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


Новая версия Universal Extractor
1.6.1.2022 (31/10/2016)
  1. Исправлена ошибка (возникала при попытке распаковать файлы, упакованные ASPack-ом)
  2. Fixed swf extraction ignoring some images and sounds (исправлена ошибка пропуска некоторых изображений и звуков из swf) отсюда
  3. Изменен GUI так, чтобы кнопки не налезали на границу окна.

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Последний раз редактировалось ya158, 31-10-2016 в 12:14.

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

Отправлено: 12:05, 31-10-2016 | #117


Ветеран


Автор проектов


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

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


Новая версия Конструктора
10.02.2017 v1.19
- Добавлена возможность создания ярлыков для запуска программ от имени Администратора.
- Добавлено предотвращение запуска на исполнение второй копии процесса установки (спасибо за идею Victor_Man и Ж.Д.А.Л.К.Е.Р.)
- Добавлено удаление предыдущей неудачной установки (определяется по наличию файла %%T\UnCom.~) и прекращение работы инсталлятора (спасибо за идею Victor_Man и Ж.Д.А.Л.К.Е.Р.)
- Добавлена возможность сохранять созданный файл конфигурации в папке SourceDir
- Обновлен архиватор 7-zip до версии 16.04
- Оптимизирован код

В связи с новой обновлением Конструктора обновлены все инсталляторы

Новая версия CCleaner
10.02.2017
- Обновлен CCleaner до версии 5.26.0.5937
- Обновлен CCEnhancer до версии 4.4.1
- Обновлен winapp2.ini до версии v5.26.170130

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Отправлено: 15:23, 10-02-2017 | #118


Пользователь


Автор проектов


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

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


При запуске, батник дал крякозябры.
Как то собирал тестовый проект с деинсталятором, так если в деинсталяторе нажать Отмена...
Окно разворачивается на весь экран... (что то не то со скриптом...)
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:13, 11-02-2017 | #119


Ветеран


Автор проектов


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

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


Цитата CryptoNick:
При запуске, батник дал крякозябры. »
В шапке выделено красным:
Цитата ya158:
!!!Внимание. Если при работе скрипта в консоле отображаются кракозябры. то в свойствах консоли требуется установить шрифт TrueType (Lucida Console, Consolas). »
Цитата CryptoNick:
Окно разворачивается на весь экран... »
По-подробнее - какой проект? Пришлите получившийся инсталлятор.

-------
Объективная реальность есть бред, вызванный недостатком алкоголя в крови.
Оптимизм есть недостаток информации.
Хочу быть змеёй, чтобы на работу лёжа ходить.
Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы


Отправлено: 12:18, 11-02-2017 | #120



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Конструктор инсталляторов на основе 7z SFX + готовые инсталляторы

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Модифицированный SFX модуль 7-Zip'а для установок Oleg_Sch Автоматическая установка Windows 2000/XP/2003 2011 20-03-2024 11:07
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




 
Переход