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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » Модифицированный SFX модуль 7-Zip'а для установок

Ответить
Настройки темы
Модифицированный SFX модуль 7-Zip'а для установок

Старожил


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


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

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


Изменения
Автор: Petya V4sechkin
Дата: 02-11-2017




Модифицированный SFX модуль 7-Zip'а для установок

Версия 1.6.1 Stable, сборка 3873 (5 марта 2016 г.)
Версия 1.7.0 Develop, сборка 3873 (5 марта 2016 г.)


Модифицированный модуль предоставляет широкие возможности для создания SFX архивов. Используя модуль, Вы можете:
  • указывать желаемый путь распаковки содержимого архива
  • использовать как абсолютные, так и относительные пути
  • выбирать между интерактивной, "тихой" и скрытой распаковкой
  • контролировать внешний вид диалоговых окон и текста в них
  • конфигурировать различные варианты установки запакованных приложений, впоследствии выбирая нужный сценарий ключом командной строки
  • конфигурировать установку нескольких (до 10) разных запакованных приложений, впоследствии выбирая нужные приложения и последовательность их установки ключом командной строки
  • просто распаковать архив в желаемую папку
  • запускать после распаковки последовательно несколько файлов (.exe, .msi, .reg и т.п.) и использовать его для установки приложений
  • заменить, применяемые ранее для установки, .bat или .cmd файлы и исключить необходимость использования "StartX.exe", "msistub.exe" и подобных утилит
  • создавать ярлыки к программам и назначать значки для этих ярлыков по своему усмотрению
  • использовать архивы с разными методами сжатия (LZMA, LZMA2, Deflate, PPMd), которые предлагает архиватор 7-Zip
  • удалять как отдельные файлы, после их использования, так и сам SFX архив
  • и многое другое...

Домашняя страница | Страница загрузок
Зеркалa:
Веб-архив сайта
Яндекс.Диск - полный набор
OneDrive - полный набор, пароль: 7zsfxmod
OneDrive - только модули SFX (7zsd_tools_170_3900.7z)


Обсуждение GUI (графической оболочки) для создания 7-zip SFX с модифицированным модулем ведется в этой теме. Автор GUI - hobbeat.

Кнопка для работы с 7z SFX архивами в Total Commander-е находится здесь (автор - gora, вечная память)

Файлы конфигурации 7z SFX обсуждаются в этой теме (автор - gora)

Отдельное спасибо ArtXGroup за финансовую поддержку


Теперь модуль будет в двух версиях:
1. Stable. В дальнейшем в нем из изменений будет только исправление ошибок (надеюсь их не будет) и обновление кода самого 7-Zip до последней стабильной версии.
2. Develop->Alpha->Beta. Исходные коды 7-Zip - последняя бета версия самого архиватора, добавление новых функций.

FAQ
читать дальше »



Q:
Цитата:
Как извлекать определенные папки, в зависимости от разрядности системы/варианта установки и т.д
A: Такой возможности нет, SFX архив распаковывается полностью


Q:
Цитата:
а можно ли для sfx архива задавать пароль который при обычном запуске sfx архива как бы не запрашивался и сам вводился, а при попытке просто распаковать архив этот пароль запрашивался
A: Нельзя. Модули с данной поддержкой официально недоступны. Пока, пользуясь своей "властью", я даю такие модули только тем, кто мне помогает/прикладывает какие-то усилия в развитии самого модуля, справки к нему и сопутствующих файлов. Считайте это моим эгоизмом.

Это сообщение посчитали полезным следующие участники:
Показать/скрыть список поблагодаривших

Отправлено: 06:20, 11-07-2005

 

Ветеран


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

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


Не запускается ExecuteOnLoad, в чём может быть причина?
Модуль 7zsd_LZMA2.sfx 7zsd_170_3900, файл err.vbs в папке err.sfx.api.1, находящейся в корне архива.
Код: Выделить весь код
ExecuteOnLoad="%%P:hidcon:cmd /c if /i not exist \"%%S\\Drivers\" (cscript //nologo err.vbs)"

Отправлено: 10:21, 17-04-2016 | #1731



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

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


Аватара для gora

Ушёл из жизни


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

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


sov44, хотя эта папка упомянута в анонсе, но ее описания в справке я пока не делал и даже не тестировал эту папку. Причина в том, что ее концепция не принята окончательно и может быть изменена в дальнейшем.
На момент последнего обсуждения концепции папка *.sfx.api.* в корне архива распаковывалась в дополнительную временную папку, но распаковывалось не ее содержимое, а сама папка с содержимым. Если оно так и осталось, то путь к файлу err.vbs в Вашем случае должен выглядеть так:
Код: Выделить весь код
ExecuteOnLoad="%%P:hidcon:cmd /c if /i not exist \"%%S\\Drivers\" (cscript //nologo err.sfx.api.1\\err.vbs)"
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:11, 17-04-2016 | #1732


Ветеран


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

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


gora, к сожалению не работает. Остаётся ждать обновления модуля.

Отправлено: 11:30, 17-04-2016 | #1733


Ветеран


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


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

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


Oleg_Sch,
Большое спасибо, что занимаетесь дальнейшей разработкой модуля.

Может у вас найдется время/желание воплотить некоторые хотелки, о которых я просил ранее:
1. Префиксы/секции по аналогии с x86 и x64, но для определения на какой системе запустился инсталлятор - "XP", "VISTA, "7", "8", "10", "не ниже, чем VISTA" и т.п.
2. Проверка условий - например, наличия определенного файла. В частности сейчас появилась возможность запуска команд до распаковки самого архива - 'ExecuteOnLoad', 'PreExtract', 'PreExtractX'. С помощью них можно организовать проверку установлена ли программа или нет, а также проверку версии этой программы (с помощью cmd или vbs). Но было бы неплохо в зависимости от результатов такой проверки выводить различные BeginPrompt, запускать различные RunProgram или вообще прерывать распаковку с/без уведомлением. Можно конечно пользоваться командой типа taskkill из ExecuteOnLoad или PreExtract для прерывания распаковки при определенных условиях, но при этом можно прервать другой процесс, да и вообще лучше делать это нативно из модуля.
3. Получения в модуль значения переменной из комстроки:
Код: Выделить весь код
GetEnvironment="cmd set a=test"
RunProgram="cmd set b=%a%"
Хотя, наверное это из области фантастики

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


Отправлено: 15:27, 25-04-2016 | #1734


Новый участник


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

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


Давно здесь не был...а тут обновы, здорово(!), буду разбираться!
По поводу вопросов, которые возникают у меня:
1. Как предотвратить повторный запуск одного и того же SFX? Или завершить его, не попортив уже запущенный?
Зачем: мало ли что сделала ранее запущенная инстанция, а тут все начинается с начала.
Может, в текущей версии это уже можно сделать? А может и в старых был вариант? - я не настолько досконально разбирался...не ругайте сильно.
2. Хотелось бы иметь минимальный инструмент для ветвления команд (не из командной строки, а в теле файла конфигурации)
Ну хоть простейший, например - что-то проанализировать и пропустить команды или хотя бы выполнить команды.
Как бы виделось это для выполнения п.1 (просто для понимания мысли - п.1 можно решить совсем по другому, наверное):
Посмотрел наличие ранее распакованного (или созданного предыдущей инстанцией) файла (да хотя бы просто через cmd) и установил переменную %XXXX%.
В следующей команде проанализировал переменную %XXXX% и завершил сценарий (нужна команда типа Exit), можно с сообщением.
3. Был у меня еще вот такой вопрос: http://forum.oszone.net/post-2506896.html#post2506896
===========================================================
От радости , что есть обновы не прочитал предыдущий пост - а там, собственно, похожее предложение.

Последний раз редактировалось Victor_Man, 04-05-2016 в 01:02. Причина: Поднял глаза в гору :)


Отправлено: 00:11, 04-05-2016 | #1735


Новый участник


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

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


Victor_Man,
1. вариант был: OverwriteMode="10" по крайней мере так не давало ошибки и запускалось несколько версий
2. изучайте сценарии и чужие проекты.
Есть замечательная программа: SFX Config Editor, в ней можно открыть любой готовый проект и подсмотреть конфиг. (скопировать, отредактировать)
3. есть у модуля для этого переменные.

Отправлено: 07:51, 04-05-2016 | #1736


Новый участник


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

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


Цитата vladshishkin:
1. вариант был: OverwriteMode="10" по крайней мере так не давало ошибки и запускалось несколько версий
2. изучайте сценарии и чужие проекты.
Есть замечательная программа: SFX Config Editor, в ней можно открыть любой готовый проект и подсмотреть конфиг. (скопировать, отредактировать)
3. есть у модуля для этого переменные. »

1. Да много может быть конфликтов, например:
- запускаем SFX, скрипт изменяет какой-то файл в %InstallPath%
- запускаем новый SFX и скрипт портит этот файл.
Или еще вариант:
Запускаем SFX, завершаем программу...но скрипт делает какие-то действия некоторое время.
Запускаем новый SFX, в процессе распаковки его первая инстанция завершается и по Delete удалет все из папки %InstallPath%.
И т.д.

2. Да знаю я, как извлечь конфигурационный файл и файлы проекта (--sfxconfig, 7Zip, Universal Extractor) и легче их рассматривать просто глазками, сверяясь с описанием. И проектов много видел, но вот что-то не нашел того, о чем я писал.
3. А можете хотя бы назвать эти переменные...их даже много, оказывается...
Надеюсь, вы не имели в виду %%S, %%T или %SfxFolderXX% - это все не то.
А в идеале для подтверждения Вашего утверждения можете изменить мой пример в п.3. Буду благодарен.
Я Вам даже билдер приложил там http://forum.oszone.net/post-2506896.html#post2506896
=============================================
Не успел посмотреть, может, что-то в новой версии и добавились, но в старой ответа на свои вопросы я не нашел.

Последний раз редактировалось Victor_Man, 05-05-2016 в 11:34.


Отправлено: 20:19, 04-05-2016 | #1737


Новый участник


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

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


Oleg_Sch, модули не поддерживают архивы запакованные с параметром -myx=9?

Отправлено: 22:41, 06-05-2016 | #1738


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


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

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


Oleg_Sch, gora, Вышел 7-Zip 16.00 Final. С нетерпением ждём от вас обнов.
gora, Если есть возможнось подправить механизм теста сжатия больших архивов, что бы отображался лучший метод и при подключении ключа fb тест продолжался.

-------
Win 7 x64


Последний раз редактировалось SergeyZV, 11-05-2016 в 20:25.

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

Отправлено: 18:02, 10-05-2016 | #1739


Новый участник


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

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


Цитата Victor_Man:
Да много может быть конфликтов, например:
Запускаем SFX, завершаем программу...но скрипт делает какие-то действия некоторое время.
Запускаем новый SFX, в процессе распаковки его первая инстанция завершается и по Delete удаляет все из папки %InstallPath%. »
Я считаю что в модуле очень не хватает функции "убийства" процесса
И функции "убийства" всех дочерних процессов после закрытием проекта. Для того чтобы временная папка корректно удалялась. Иначе она активно размножается по пути извлечения.
Применение системного TaskKill не всегда возможно, так как во многих WinPe его просто нет...

Последний раз редактировалось vladshishkin, 18-06-2016 в 08:06.


Отправлено: 08:00, 18-06-2016 | #1740



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » Модифицированный SFX модуль 7-Zip'а для установок

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Горячие клавиши для восстановления заводских установок ноутбуков Sparkster Ноутбуки 398 03-10-2019 15:11
GUI для модифицированного 7-Zip SFX модуля для установок hobbeat Автоматическая установка Windows 2000/XP/2003 259 09-10-2016 07:01
Создание silent 7-zip sfx mitiya Автоматическая установка Windows 2000/XP/2003 17 01-03-2011 22:14
[решено] Как создать модуль SFX? CtrlSoft Программное обеспечение Windows 3 13-02-2008 21:31
CMD/BAT - [решено] замена set str2=%str1:.zip/=.zip/!% глючит на пробелах?! akrav Скриптовые языки администрирования Windows 5 12-02-2008 11:54




 
Переход