Внешний архив при запуске в BeginPrompt спрашивает выбрать версию (два варианта - через ОК и Shift+ОК), выбираем - извлекается 4 файла и в зависимости от выбора запускается файл 1-й или 2-й файл.
Внешний архив с sfx - конфигурация:
;!@Install@!UTF-8!
Title="Программка"
BeginPrompt=" Для продолжения:
• Нажмите [Да] \t\t\t\t- для для запуска установщика версии 1.
• Зажмите [Shift] и нажмите [Да] \t- для для запуска установщика версии 2.
"
GUIMode="1"
GUIFlags="2+4+8+16+256"
RunProgram="%%T\\v1.exe"
AutoInstall="%%T\\v2.exe"
;!@InstallEnd@!
Понятное дело файлы 1 и 2 идентичны кроме версии в коментариях.
Они при запуске просят выбрать вариант - портабельный запуск (из временной папки) или распаковка с созданием ярлыков.
При портативном запуске сообщается пароль 3 или 4 файлу и запускается 3 или 4 файл
При установке выводит окно выбора пути далее после выбора сообщается пароль + пусть установки в 3 или 4 файлы (от 1-го к 3-му файлу или от 2-го к 4-му файлу).
Конфигурация файлов 1 и 2
;!@Install@!UTF-8!
InstallPath="%ProgramFiles%\\Программа"
Title="Программа"
BeginPrompt="Программа версия Х.Х
Для продолжения:
• Нажмите [Да] для установки.
• Зажмите [Shift] и нажмите [Да] для запуска.
\t(Портативный вариант)
"
ExtractPathText="Выберите папку для установки:"
GUIFlags="2+4+8+16+128+256"
ExtractPathTitle="Куда установить ?"
ExtractTitle="Установка"
ErrorTitle="Ошибка !"
WarningTitle="Внимание !"
PasswordTitle="Внимание !"
PasswordText="Введите пароль к установщику:"
ExtractCancelText="Вы не хотите устанавливать Программа ?"
RunProgram="%%S\\Прога_Версия.exe -pПаролище -ai1 -InstallPath=\"%%T\""
AutoInstall="%%S\\Прога_Версия.exe -pПаролище"
;!@InstallEnd@!
Третий и четвертый файлы запаролены и настроены на извлечение во временную папку по-умолчанию и на AutoInstallX (-ai1)
Конфигурация файлов 3 и 4
;!@Install@!UTF-8!
InstallPath="%TEMP%\\Программа"
ExtractDialogText="Распаковываем ресурсы..."
GUIMode="1"
GUIFlags="2+4+8+16"
ExtractTitle="Программа"
ErrorTitle="Ошибка !"
WarningTitle="Внимание !"
PasswordTitle="Внимание !"
PasswordText="Установщик запаролен ! \nВведите пароль:"
RunProgram="del1:Программа.exe -параметр"
AutoInstall1="del0:"
Delete="%TEMP%\\Программа"
Shortcut1="D,{%%T\\Программа.exe},{},{},{Коментарий ярлыка.},{Программа},{%%T},{},{}"
Shortcut1="P,{%%T\\Программа.exe},{},{Программа},{Коментарий ярлыка},{Программа},{%%T},{},{}"
;!@InstallEnd@!
При портативке прога извлекается и запускается, после закрытия все временные файлы (1,2,3,4 и программа.exe) стираются.
При установке файл 3(или 4) извлекается по заданному пути файлом 1(или 2) и создаёт ярлыки, при этом отключено удаление файлов программы. По завершению стираются файлы (1,2,3 и 4) из временной папки.