diff options
-rw-r--r-- | BuildTools/SCons/Tools/wix.py | 2 | ||||
-rw-r--r-- | Swift/Packaging/WiX/Swift.wxs | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/BuildTools/SCons/Tools/wix.py b/BuildTools/SCons/Tools/wix.py index 7b62508..705d249 100644 --- a/BuildTools/SCons/Tools/wix.py +++ b/BuildTools/SCons/Tools/wix.py @@ -7,7 +7,7 @@ def generate(env) : if len(wixPath) > 0 and wixPath[-1] != "\\": wixPath += "\\" env['WIX_HEAT'] = wixPath + 'heat.exe' - env['WIX_HEAT_OPTIONS'] = '-nologo -gg -sfrag -suid -template fragment -dr ProgramFilesFolder' + env['WIX_HEAT_OPTIONS'] = '-nologo -ag -sfrag -suid -template fragment -dr ProgramFilesFolder' env['WIX_CANDLE'] = wixPath + 'candle.exe' env['WIX_CANDLE_OPTIONS'] = '-nologo' env['WIX_LIGHT'] = wixPath + 'light.exe' diff --git a/Swift/Packaging/WiX/Swift.wxs b/Swift/Packaging/WiX/Swift.wxs index c14f23d..1e8d129 100644 --- a/Swift/Packaging/WiX/Swift.wxs +++ b/Swift/Packaging/WiX/Swift.wxs @@ -10,7 +10,14 @@ <Package Id='*' Keywords='Installer' Description="Swift Installer" Comments="Swift is available under the GPL version 3" Manufacturer="Swift.im" InstallerVersion='300' Languages='1033' Compressed='yes' SummaryCodepage='1252' InstallScope="perMachine"/> <Media Id='1' Cabinet='Swift.cab' EmbedCab='yes'/> - <MajorUpgrade DowngradeErrorMessage="A newer version is already installed. Remove this version if you wish to downgrade." /> + <!-- Schedule the upgrade to afterInstallExecute means that MSI will first install the new version + over the existing version and run the uninstall of the old version afterwards. This way shortcuts + are not recreated on every new installation and pinned shortcuts stay alive. + However this requires that the components for installed files with the same filename will always + have the same GUID (do not run heat.exe with -gg flag) or else when MSI removes the components + of the old version with the same filename as components of the new version it will delete the + files that belong to components of the new version.--> + <MajorUpgrade Schedule="afterInstallExecute" DowngradeErrorMessage="A newer version is already installed. Remove this version if you wish to downgrade." /> <Directory Id='TARGETDIR' Name='SourceDir'> <!-- Disabling CRT merge module, because it's not working |