Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для El Sanchez

Ветеран


Contributor


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

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


Цитата mifkys:
а что это такое? пробовал вставитЬ, говорит, что неизвестная функция »
mifkys, потому как insombia не потрудился описать функцию CheckError и дать указание в каких строках необходимо вставить директиву Check. Да и не это вам нужно. Нужно проверять код возврата unzip.exe. Если он не равен 0, то установщик прерывает работу. В секции Run код возврата не проверить, поэтому распаковку нужно описать в секции Code. Допустим, распаковка идет в первую очередь, unzip.exe включен в состав установщика, архивы рядом с установщиком, тогда для распаковки подходит этап ssInstall:
Код: Выделить весь код
procedure CurStepChanged(CurStep: TSetupStep);
var
    ResultCode: Integer;
begin
    case CurStep of
        ssInstall: begin
            ExtractTemporaryFile('unzip.exe');
            Exec(ExpandConstant('{tmp}\unzip.exe'), ExpandConstant('"{src}\arcname.zip"'), '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
            if ResultCode <> 0 then Abort;
        end;
    end;
end;

Отправлено: 12:33, 24-06-2013 | #682