MrAWP,
или так
Код:

function InitializeSetup(): Boolean;
begin
Result := True;
if not FileExists(ExpandConstant('{src}\archieve.exe')) then
begin
SuppressibleMsgBox('Файл archieve.exe не найден в папке с инсталлятором!', mbCriticalError, MB_OK, MB_OK);
Result := False;
end;
end;
или так
Код:

procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssInstall then
if not FileExists(ExpandConstant('{src}\archieve.exe')) then
begin
SuppressibleMsgBox('Файл archieve.exe не найден в папке с инсталлятором!', mbCriticalError, MB_OK, MB_OK);
Abort;
end;
end;
даже можно и одновременно.