3eJIeHbЦитата: http://forum.ru-board.com/topic.cgi?forum=5&topic=23235&start=1280#16
Кто нить поможет или нет?
-- у меня сложилось впечатление, что эту проблему ты решил. Или я не прав ? На всякий случай :
Код: [Setup]
AppName=My Program
AppVersion=3.6
AppVerName={#emit SetupSetting('AppName') + SetupSetting('AppVersion')}
DefaultDirName={pf}\My Program
[Files]
Source: MyProg.exe; DestDir: {app}
[Registry]
Root: HKLM; SubKey: Software\3eJIeHb MOD; ValueType: string; ValueName: Version; ValueData: {#SetupSetting("AppVersion")}; Flags: UnInsClearValue deletevalue
[Code]
function InitializeSetup(): Boolean;
var
ResultCode: Integer;
InstalledVersion: string;
PrevUninstExe: string;
begin
Result:=True;
If RegQueryStringValue(HKLM, 'Software\3eJIeHb MOD', 'Version', InstalledVersion) then
begin
RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + '{#SetupSetting("AppName")}_is1', 'UninstallString', PrevUninstExe);
If InstalledVersion > '{#SetupSetting("AppVersion")}' then
begin
if MsgBox('Вы устанавливаете {#SetupSetting("AppName")} версии {#SetupSetting("AppVersion")}' + #10#13 +
'На компьютере уже установлена {#SetupSetting("AppName")} версии ' + InstalledVersion + #13#13 +
'Для продолжения установки необходимо удалить ранее установленную версию программы',
mbConfirmation, MB_YESNO) = idYes then
Exec(RemoveQuotes(PrevUninstExe), '/silent', '', SW_SHOW, ewWaitUntilTerminated, ResultCode)
else Result:= False;
end;
end;
end;