Цитата j8r60:
Я упаковал игру в один SFX-ARC »
|
А смысл? Инно сам хорошо жмет, на максе настройках чуть получше 7зип (тестил на ведьмаке с видео и мп3 от бонусного издания).
И почему тогда распаковку не подсунуть в секцию Run?
Все равно пример годится, просто в секции Files копируем файлик лицензии (или любой другой мелкий текстовичок) в {tmp} (он очищается после установки) и к строке копирования приделываем BeforeInstall.
В CurPageChanged вместо wpWelcome можно подставлять свои требуемые события: wpLicense, wpPassword, wpInfoBefore, wpUserInfo, wpSelectDir, wpSelectComponents, wpSelectProgramGroup, wpSelectTasks, wpReady, wpPreparing, wpInstalling, wpInfoAfter, wpFinished
Можно по аналогии с CurPageChanged использовать системную функцию CurStepChanged и события ssInstall, ssPostInstall, ssDone
Код:

procedure CurStepChanged(CurStep: TSetupStep);
var ResCode : integer;
begin
if CurStep = ssInstall then
Exec(ExpandConstant('{src}\Programs\game.exe'), '-x -y -s2 -d'+AddQuotes(ExpandConstant('{app}')), ExpandConstant('{src}'), SW_SHOW, ewWaitUntilTerminated, ResCode)
end;
Три способа я привел - через CurPageChanged, CurStepChanged и BeforeInstall, полуспособ стандартный - Run, больше мне способов неведомо.
И еще - добавь пробелы в ' -x -y -s2 -d ' - а то следующая AddQuotes прибавит путь и параметры и сам путь собъются.