Код:
#define NeedSHA "ad030d5606a2dcfa75ebc425a70730f23e7f07ab"
[Setup]
AppName=My Application
AppVersion=1.5
CreateAppDir=no
[*Сode]
function InitializeSetup: Boolean;
var
FileName: PAnsiChar;
begin
FileName:=ExpandConstant('{reg:HKLM\SOFTWARE\Code, PATH_APPLICATION}')+'\Test.exe';
if not FileExists(FileName) then begin
MsgBox('Установка Прекращена' #13#13 'Установите сначала Программу!', mbCriticalError, MB_OK);
Result:=False;
end else begin
if (GetSHA1OFFile(FileName) = Lowercase('{#NeedSHA}')) then Result:=MsgBox('Программа уже Установлена' #13#13 'Продолжить Установить?', mbInformation, MB_YESNO) = IDYES
else Result:=MsgBox('Программы не совпадают!', mbCriticalError, MB_OK) <> IDOK; // если надо чтоб программа запускалось при не соответствии, сменить знак на "="
end;
end;