[issue20883] Windows 'for current user' installation - 32/64-bit registrations overwrite each other

Steve Dower report at bugs.python.org
Tue Mar 11 23:17:18 CET 2014


Steve Dower added the comment:

UAC is still required for the installer - unfortunately MSI just doesn't support having a single package that can do both elevated and unelevated installs. Still, you can install once per-user and then copy the PythonXY folder onto another machine, which does not work as easily with the all-users install. I actually have a collection of zipped Python installs and an automated test that extracts each one in turn.

I'm not sure what constitutes a "complete" patch, but I've attached a patch for msi.py (though I have no idea how it works and can't test it locally) and launcher.c to look at the new keys. If there are tests for these I don't see where they are, but I'm happy to extend them.

I don't think backwards compatibility is a concern here. Older versions of Python will continue to incorrectly handle side-by-side per-user installations with the py.exe launcher and any other tools that use the registry to find installations. Existing tools that are not modified will find Python 3.5 installations with identical mechanics to previously, while those that also look for the InstallPath32 and *64 keys will find both installations if they are there. Even if the changes are backported as a bugfix, nothing changes for tools that are not aware of the new keys.

----------
keywords: +patch
Added file: http://bugs.python.org/file34363/20883_1.patch

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue20883>
_______________________________________


More information about the Python-bugs-list mailing list