Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Автоматическая установка Windows 2000/XP/2003 (http://forum.oszone.net/forumdisplay.php?f=32)
-   -   Создание silent 7-zip sfx (http://forum.oszone.net/showthread.php?t=44025)

mitiya 18-01-2005 17:30 289766

Создание silent 7-zip sfx
 
Подскажите , кто знает, как сделать автоматически устанавливаемый 7zip sfx архив . Типа как в раре чтоб не спрашивал ,а сразу ставился в нужную папку.

kirillkr 18-01-2005 17:40 289767

Как обычный sfx, только без запроса

mitiya 18-01-2005 18:04 289773

а можно по подробней описать процесс (я так понял там в командной строке надо чето писать) ? если не трудно

Vadikan 19-01-2005 01:56 289880

mitiya
В Справке 7z описан процесс создания SFX (Index -> sfx) , но могу рассказать подробнее.
  1. Создается типичный пакетный файл с командой на установку программы. Например, install.cmd (в примере просто выводится ipconfig в файл)
    Код:

    cmdow @ /HID
    @echo off
    ipconfig >> C:\report.txt
    exit

  2. install.cmd запаковывается в обычный 7z архив (уровень сжатия лучше сделать Ultra для максимального сжатия). На выходе имеем install.7z
  3. Создается конфигурационный файл config.txt следующего содержания
    Код:

    ;!@Install@!UTF-8!
    RunProgram="install.cmd"
    ;!@InstallEnd@!

    и сохраняется обязтельно в UTF-8 в ту же директорию, где находится install.7z
  4. Берется sfx модуль 7zS.sfx (он в папке с архиватором находится) и помещается все в ту же директорию.
  5. Теперь в директории, где у нас три файла install.7z, config.txt и 7zS.sfx запускается команда
    Код:

    copy /b 7zS.sfx + config.txt + install.7z myinstall.exe

Вот и все. Получившийся файл myinstall.exe и есть наш silent 7z sfx. Запускаем и идем проверять файл C:\report.txt.

Mожно и без WinRAR обходится вполне. Размер sfx у 7z великоват по сравнению с WinRAR. Oднако, сдается мне, что размер архива на выходе поменьше может оказаться в некоторых случаях. Вдобавок
Цитата:

Цитата 7z Manual
The most of SFX modules (except 7zC.sfx) are uncompressed. You can use UPX program (http://upx.sourceforge.net) to compresss such modules. After compressing by UPX program size of sfx module will be reduced to 40-50% of original size.


mitiya 19-01-2005 06:10 289917

спасибо за пояснения ,но я по прежнему не понимаю как заставить его распаковаться не в temp а в назначенную мной директорию ?

Vadikan 19-01-2005 10:15 289947

mitiya
Toгда создайте SFX и запускайте с ключами
Код:

-y /q /r:n -o<путь к директории>
или это тоже не устраивает?

Debugger 19-01-2005 13:29 290002

Тут есть один нюанс. Охота сказать чтобы другие на грабли не наступали. При создании самораспаковывающегося архива с последующим запуском установки у меня не запускалась строка вида "msiexec /i acdsee70.msi /qb-". 7zip просто выдавал ошибку типа не найден файл. Посмотрел, как сделан sfx 7zip архив в инсталяшке dotnetframework на msfn. Там в файле установки config.txt запуск сделан через некую программку startx.exe, которая работает точно так же как консольная команда start (с этими же ключами). Поэтому если у кого возникнет такая же проблема, можете воспользоваться информацией. Также через эту прогу можно сделать авторан к диску. Прога лежит здесь - http://www.naughter.com/download/startx.zip

mitiya 19-01-2005 17:31 290098

Vadikan

а в config.txt нигде путь указать нельзя ?

Vadikan 20-01-2005 05:49 290262

mitiya
Я не знаю, я задал вопрос на MSFN.

Vadikan 21-01-2005 19:48 290848

mitiya
Oтвет на вопрос я нашел на форуме разработчика. К сожалению, без ключей это невозможно.

Q. how can i make a 7zip_Sfx.exe auto extract to c:\temp2
A. (Igor Pavlov, 2005-01-14 00:00) Now the only way is runtime switch: 7z.exe -oc:\temp2 -y

mitiya 21-01-2005 20:29 290854

странно вроде сам 7z 3.13 запакован сам собой :) и ставится в d:\...\7-zip
ну да ладно не настолько 7zip круче rar

Vadikan 21-01-2005 23:27 290910

mitiya
3.13 - 4.12b спрашивают хотите ли вы установить 7zip, затем распаковывается во временную директорию (поищите в папке %temp% что-то типа 7zxxxx.tmp), а после того, как вы укажете директорию установки, запускается setup.exe. После установки временная директория очищается. 4.14b использует другой инсталлер, я его не ковырял еще.
Цитата:

не настолько 7zip круче rar
Каждкому свое. Зависит еще от файлов, которые вы сжимаете. В этой теме на MSFN, например, предпочитют ужимать Office2003 именно при помощи 7z.

mitiya 22-01-2005 03:47 290951

7zip показывает значительно лчшие результаты с лучаях когда много одинаковых по "содержанию файлов" , я как-то winXP prof + winXP HE сжал до размера одного дистрибутива ,но это чересчур спицефический случай + распаковывает небыстро.

Antuan 23-01-2005 14:49 291261

Ребята, товарищ RyanVM, сделал наконец-то инструкцию по созданию таких архивов. Вот ссылка: http://ryanvm.net/forum/viewtopic.php?t=67

Vadikan 23-01-2005 22:14 291389

Antuan
Да, я видел... На MSFN было много вопросов. Впрочем, вряд ли вы найдете десять отличий с моей инструкцией в этой же теме. Примечание про startx.exe сделал Debby, ну а скриншоты тут не особо нужны.

Antuan 24-01-2005 18:53 291708

Да, конечно, уже всё было разжёвано, спасибо, только меня интересовала упаковка вместе c StartX, как осуществляется.

Ianus 22-02-2011 23:53 1619665

Вложений: 1
Доброго времени суток!
Помогите, пожалуйста создать 7z SFX, точнее config.txt, с распакованного Inno Setup инсталлятора.
Сценарий установки во вложении.

adyg_94 01-03-2011 22:14 1624853

Какой надо прописать скрипт чтобы после установки появляся вопрос о перезагрузке???


Время: 13:37.

Время: 13:37.
© OSzone.net 2001-