Как сделать самораспаковывающийся и запущенный установщик

Поэтому в настоящее время мои пользователи загружают zip-файл, разархивируют его, а затем запускают setup.exe – я бы хотел, чтобы они сделали это одним щелчком мыши. Используя http://www.wikihow.com/Use-7Zip-to-Create-Self-Extracting-excutables, я могу сделать самораспаковывающийся exe, но на самом деле он не запускает установщик.

Из этого вопроса

Почему 7zip игнорирует мой InstallPath при создании установщика SFX?

кажется, мне также нужен файл .sfx, поэтому я скопировал из другого вопроса и создал один со следующим содержимым

;[email protected]@!UTF-8! InstallPath="C:\\test" GUIMode="2" RunProgram="setup.exe" ;[email protected]@! 

и вызвал setup.sfx и добавить это в архив вместе с другими файлами

 setup.ini setup.exe setup.ico install.jar JVM32 (folder) 

но это не имело никакого значения, что еще мне нужно сделать.

Дополнительный вопрос, у меня также есть WinRar, влияет ли на конечный пользователь опыт использования 7Zip или Winrar?

Я создал пошаговые инструкции о том, как это сделать, поскольку я также очень смутился о том, как это сделать.

Как сделать самораспаковывающийся архив, который запускает ваш setup.exe с 7zip -sfx-переключателем

Вот шаги.

Шаг 1 – Установите папку установки

Чтобы упростить создание папки c: \ Install. Здесь мы скопируем все необходимые файлы.

Шаг 2 – 7Защить своих инсталляторов

  1. Перейдите в папку с вашим .msi и вашим setup.exe.
  2. Выберите и .msi и setup.exe.
  3. Щелкните правой кнопкой мыши и выберите 7Zip -> “Добавить в архив”
  4. Назовите свой архив «Installer.7z» (или имя по вашему выбору)
  5. Нажмите ОК.
  6. Теперь у вас должен быть «Installer.7z».
  7. Скопируйте этот .7z файл в каталог c: \ Install

Шаг 3 – Получите модуль расширения sfx 7z-Extra

Вам необходимо загрузить 7z-Extra.

  1. Следуйте по этой ссылке, чтобы скачать 7Zip
  2. Вам нужно загрузить версию 9.20 (как показано в May May 2015), поскольку бета-версия не содержит правильных файлов.
  3. Прямая ссылка для скачивания .
  4. Извлеките дополнительные файлы 7zip
  5. Скопируйте файл «7zS.sfx» в c: \ Install

Шаг 4 – Установите ваш config.txt

Я бы рекомендовал использовать NotePad ++ для редактирования этого текстового файла, так как вам нужно будет кодировать в UTF-8, следующие инструкции используют блокнот ++.

  1. Используя проводник Windows, перейдите в каталог c: \ Install
  2. щелкните правой кнопкой мыши и выберите «Новый текстовый файл» и назовите его config.txt
  3. щелкните правой кнопкой мыши и выберите «Редактировать с помощью NotePad ++
  4. Нажмите «Меню кодирования» и выберите «Кодировать в UTF-8»,
  5. Введите что-то вроде этого:

     ;[email protected]@!UTF-8! Title="SOFTWARE v1.0.0.0" BeginPrompt="Do you want to install SOFTWARE v1.0.0.0?" RunProgram="setup.exe" ;[email protected]@! 

Отредактируйте эту замену [SOFTWARE v1.0.0.0] с именем вашего продукта. Замечания о параметрах и настройках файла настроек приведены здесь

Контрольно-пропускной пункт

Теперь у вас должна быть папка «c: \ Install» со ​​следующими тремя файлами:

  1. Installer.7z
  2. 7zS.sfx
  3. config.txt

Шаг 5 – Создайте архив

Эти инструкции я нашел в Интернете, но нигде не объяснил ни один из 4 шагов выше.

  1. Откройте окно cmd, Window + R -> cmd -> нажмите enter
  2. В окне команды введите следующее

     cd \ cd Install copy /b 7zS.sfx + config.txt + Installer.7z MyInstaller.exe 
  3. Посмотрите в c: \ Install, и теперь вы увидите, что у вас есть файл MyInstaller.exe

  4. Вы закончили

Запустить установщик

Дважды щелкните мышью на MyInstaller.exe, и он предложит ваше сообщение. Нажмите «ОК», и программа setup.exe запустится.

PS Примечание по автоматизации

Теперь, когда вы работаете в каталоге c: \ Install, я бы создал файл «Install.bat» и поместил в него сценарий копирования.

 copy /b 7zS.sfx + config.txt + Installer.7z MyInstaller.exe 

Теперь вы можете просто редактировать и запускать Install.bat каждый раз, когда вам нужно перестроить новую версию вашего пакета развертывания.

Хорошо, у меня есть работа, надеюсь, что эта информация полезна.

  1. Прежде всего, теперь я понимаю, что не только самораспаковывающийся zip-запуск извлечения с помощью doubleclick, но и не требует, чтобы на компьютере пользователя не было установлено приложение для извлечения, потому что код экстрактора находится в самом архиве. Это означает, что вы получите другой пользовательский опыт в зависимости от того, какое приложение вы используете для создания sfx

  2. Я пошел с WinRar следующим образом, это не требует создания файла sfx, все может быть создано через gui:

    • Выберите файлы, щелкните правой кнопкой мыши и выберите Добавить в архив
    • Используйте Обзор .., чтобы создать архив в папке выше
    • Изменить формат архива на Zip
    • Включить создание SFX-архива
    • Выберите вкладку «Дополнительно»
    • Выберите опции SFX
    • Выберите вкладку «Настройка»
    • Введите setup.exe в поле « Запуск после извлечения»
    • Вкладка «Выбор режимов»
    • Включить Распаковать во временную папку
    • Выберите текст и вкладку «Значок»
    • Введите более подходящее название для своей задачи
    • Выберите ОК
    • Выберите ОК

В результате exe распаковывается во временную папку, а затем запускает программу установки

Это просто с 7zip SFX-Packager (это открытый .bat- файл с открытым исходным кодом) и простой способ просто «перетаскивать» папки на него, и он создает переносимый / самораспаковывающийся пакет.

Давайте будем гением компьютера.