diff options
author | Steve Dower <steve.dower@microsoft.com> | 2015-07-09 03:18:44 (GMT) |
---|---|---|
committer | Steve Dower <steve.dower@microsoft.com> | 2015-07-09 03:18:44 (GMT) |
commit | 494374922c909bfb7c833032a686cc173762d988 (patch) | |
tree | 4824dbeaca517af7abab41a9c1714be71b23d975 /Tools/msi/launcher | |
parent | 9e7a0468ef12dc68a7efc397511ef06407aa835c (diff) | |
download | cpython-494374922c909bfb7c833032a686cc173762d988.zip cpython-494374922c909bfb7c833032a686cc173762d988.tar.gz cpython-494374922c909bfb7c833032a686cc173762d988.tar.bz2 |
Issue #24585: Enables build-to-build upgrades that preserve settings.
Rather than using Burn "Persisted" variables we now add registry keys for each added feature. These can be detected by the installer regardless of which version installed them, and we use this for Modify and Upgrade. In particular, Upgrades can't access the Persisted variables, but can find well-known registry keys.
There are also some changes to the bootstrap app to properly handle upgrades.
Finally, a few minor improvements to the Windows build to keep things tidier.
Diffstat (limited to 'Tools/msi/launcher')
-rw-r--r-- | Tools/msi/launcher/launcher_files.wxs | 5 | ||||
-rw-r--r-- | Tools/msi/launcher/launcher_reg.wxs | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/Tools/msi/launcher/launcher_files.wxs b/Tools/msi/launcher/launcher_files.wxs index 9606dc6..589dee5 100644 --- a/Tools/msi/launcher/launcher_files.wxs +++ b/Tools/msi/launcher/launcher_files.wxs @@ -4,6 +4,7 @@ <ComponentGroup Id="launcher_exe"> <Component Id="py.exe" Directory="LauncherInstallDirectory" Guid="{B5107402-6958-461B-8B0A-4037D3327160}"> <File Id="py.exe" Name="py.exe" Source="py.exe" KeyPath="yes" /> + <RegistryValue Root="HKMU" Key="Software\Python\PyLauncher" Value="[#py.exe]" Type="string" /> </Component> <Component Id="pyw.exe" Directory="LauncherInstallDirectory" Guid="{8E52B8CD-48BB-4D74-84CD-6238BCD11F20}"> <File Id="pyw.exe" Name="pyw.exe" Source="pyw.exe" KeyPath="yes" /> @@ -12,12 +13,12 @@ <Component Id="launcher_path_cu" Directory="LauncherInstallDirectory" Guid="{95AEB930-367C-475C-A17E-A89BFCD4C670}"> <Condition>NOT ALLUSERS=1</Condition> - <RegistryValue KeyPath="yes" Root="HKMU" Key="Software\Python\PyLauncher\InstallDir" Value="[LauncherInstallDirectory]" Type="string" /> + <RegistryValue KeyPath="yes" Root="HKMU" Key="Software\Python\PyLauncher" Name="InstallDir" Value="[LauncherInstallDirectory]" Type="string" /> <Environment Id="PATH_CU" Action="set" Name="PATH" Part="first" Value="[LauncherInstallDirectory]" /> </Component> <Component Id="launcher_path_lm" Directory="LauncherInstallDirectory" Guid="{4A41C365-4E27-4D38-A6D1-4A01B4A6500C}"> <Condition>ALLUSERS=1</Condition> - <RegistryValue KeyPath="yes" Root="HKMU" Key="Software\Python\PyLauncher\InstallDir" Value="[LauncherInstallDirectory]" Type="string" /> + <RegistryValue KeyPath="yes" Root="HKMU" Key="Software\Python\PyLauncher" Name="InstallDir" Value="[LauncherInstallDirectory]" Type="string" /> </Component> </ComponentGroup> </Fragment> diff --git a/Tools/msi/launcher/launcher_reg.wxs b/Tools/msi/launcher/launcher_reg.wxs index 204b4ed..eef71c8 100644 --- a/Tools/msi/launcher/launcher_reg.wxs +++ b/Tools/msi/launcher/launcher_reg.wxs @@ -3,7 +3,7 @@ <Fragment> <ComponentGroup Id="launcher_reg"> <Component Id="file_association" Directory="LauncherInstallDirectory" Guid="{5AF84D9A-D820-456B-B230-6E0105A50276}"> - <RegistryValue KeyPath="yes" Root="HKMU" Key="Software\Python\PyLauncher\AssociateFiles" Value="1" Type="integer" /> + <RegistryValue KeyPath="yes" Root="HKMU" Key="Software\Python\PyLauncher" Name="AssociateFiles" Value="1" Type="integer" /> <ProgId Id="$(var.TestPrefix)Python.File" Description="!(loc.PythonFileDescription)" Advertise="no" Icon="py.exe" IconIndex="1"> <Extension Id="$(var.FileExtension)" ContentType="text/plain"> |