win32: Silent installer improvements

- Launch uninstaller as VERYSILENT
- Don't launch Python/Perl installers when silent
This commit is contained in:
TingPing 2014-06-27 19:10:55 -04:00
parent e0f80e41bf
commit 466646f84a
1 changed files with 10 additions and 7 deletions

View File

@ -272,14 +272,17 @@ begin
if IsComponentSelected('spell') and not CheckSpellInstall() then if IsComponentSelected('spell') and not CheckSpellInstall() then
idpAddFile(SPELL, ExpandConstant('{tmp}\spelling-dicts.exe')); idpAddFile(SPELL, ExpandConstant('{tmp}\spelling-dicts.exe'));
if IsComponentSelected('langs\perl') and not CheckDLL('perl520.dll') then if not WizardSilent() then
idpAddFile(PERL, ExpandConstant('{tmp}\perl.msi')); begin
if IsComponentSelected('langs\perl') and not CheckDLL('perl520.dll') then
idpAddFile(PERL, ExpandConstant('{tmp}\perl.msi'));
if IsComponentSelected('langs\python\python2') and not CheckDLL('python27.dll') then if IsComponentSelected('langs\python\python2') and not CheckDLL('python27.dll') then
idpAddFile(PY2, ExpandConstant('{tmp}\python.msi')); idpAddFile(PY2, ExpandConstant('{tmp}\python.msi'));
if IsComponentSelected('langs\python\python3') and not CheckDLL('python34.dll') then if IsComponentSelected('langs\python\python3') and not CheckDLL('python34.dll') then
idpAddFile(PY3, ExpandConstant('{tmp}\python.msi')); idpAddFile(PY3, ExpandConstant('{tmp}\python.msi'));
end;
end; end;
end; end;
end; end;
@ -355,7 +358,7 @@ begin
sUnInstallString := GetUninstallString(); sUnInstallString := GetUninstallString();
if sUnInstallString <> '' then begin if sUnInstallString <> '' then begin
sUnInstallString := RemoveQuotes(sUnInstallString); sUnInstallString := RemoveQuotes(sUnInstallString);
if Exec(sUnInstallString, '/SILENT /NORESTART /SUPPRESSMSGBOXES','', SW_HIDE, ewWaitUntilTerminated, iResultCode) then if Exec(sUnInstallString, '/VERYSILENT /NORESTART /SUPPRESSMSGBOXES','', SW_HIDE, ewWaitUntilTerminated, iResultCode) then
Result := 3 Result := 3
else else
Result := 2; Result := 2;