summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorTingPing <tingping@fedoraproject.org>2014-06-27 19:10:55 -0400
committerTingPing <tingping@fedoraproject.org>2014-06-27 19:10:55 -0400
commit466646f84a6b18633febe561a25f6783c9b43a4c (patch)
tree121b141838c8d364a5c501d900b0f5bf167fd2b1
parente0f80e41bfc8939b4ce3110ee1e91213db8146ff (diff)
win32: Silent installer improvements
- Launch uninstaller as VERYSILENT
- Don't launch Python/Perl installers when silent
-rw-r--r--win32/installer/hexchat.iss.tt17
1 files changed, 10 insertions, 7 deletions
diff --git a/win32/installer/hexchat.iss.tt b/win32/installer/hexchat.iss.tt
index 3b69f3bd..3dd0849c 100644
--- a/win32/installer/hexchat.iss.tt
+++ b/win32/installer/hexchat.iss.tt
@@ -272,14 +272,17 @@ begin
 		if IsComponentSelected('spell') and not CheckSpellInstall() then
 			idpAddFile(SPELL, ExpandConstant('{tmp}\spelling-dicts.exe'));
 
-		if IsComponentSelected('langs\perl') and not CheckDLL('perl520.dll') then
-			idpAddFile(PERL, ExpandConstant('{tmp}\perl.msi'));
+		if not WizardSilent() then
+		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
-			idpAddFile(PY2, ExpandConstant('{tmp}\python.msi'));
+			if IsComponentSelected('langs\python\python2') and not CheckDLL('python27.dll') then
+				idpAddFile(PY2, ExpandConstant('{tmp}\python.msi'));
 
-		if IsComponentSelected('langs\python\python3') and not CheckDLL('python34.dll') then
-			idpAddFile(PY3, ExpandConstant('{tmp}\python.msi'));
+			if IsComponentSelected('langs\python\python3') and not CheckDLL('python34.dll') then
+				idpAddFile(PY3, ExpandConstant('{tmp}\python.msi'));
+		end;
 	end;
   end;
 end;
@@ -355,7 +358,7 @@ begin
 	sUnInstallString := GetUninstallString();
 	if sUnInstallString <> '' then begin
 		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
 		else
 			Result := 2;