Цитата Tco 03:
За место процедуры: CancelButtonOnClick вставляешь это: »
|
Если открыть справку, которая идет к библиотеке, то там про функцию SuspendProc тоже написано. Она как раз-таки приостанавливает текущий поток распаковки или выполнения программы. Все что нужно в вашем примере - перенести ее в самое начало. Ну и переменную CurPage обязательно задействовать, во избежании ошибки. Тоесть как-то так это будет:
Код:
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
if CurPageID = wpInstalling then
begin
Cancel:=False;
Confirm:=False;
SuspendProc;
if ExitSetupMsgBox then ISDoneCancel:=1;
ResumeProc;
end;
end;
Cancel:=True; в данном случае так делать нельзя, ибо при отмене должно выполнится удаление того, что успело распаковаться. А этого не произойдет, если провести полную отмену.