Inno Setup - Sprawdź, czy plik istnieje w miejscu docelowym, czy też nie przerywa instalacji

Potrzebuję mojego instalatora, aby sprawdzić, czy plik istnieje w lokalizacji docelowej, a jeśli go nie ma, instalacja zostaje przerwana. Mój projekt jest aktualizacją, więc chcę, aby instalator uniknął instalowania plików aktualizacji, jeśli główny exe aplikacji nie znajduje się w miejscu docelowym. Jak mogę to zrobić?

Czy ktoś może podać przykład kodu do sprawdzenia wersji pliku w rejestrze systemu Windows?

[Files]
Source C:\filename.exe; DestDir {app}; Flags: ignoreversion; BeforeInstall: CheckForFile;

[code]

procedure CheckForFile(): Boolean;
begin
  if (FileExists('c:\somefile.exe')) then
  begin
    MsgBox('File exists, install continues', mbInformation, MB_OK);
    Result := True;
  end
  else
  begin
    MsgBox('File does not exist, install stops', mbCriticalError, MB_OK);
    Result := False;
  end;
end;

questionAnswers(2)

yourAnswerToTheQuestion