[Python-bugs-list] [ python-Bugs-478949 ] Windows installer start menu registry

noreply@sourceforge.net noreply@sourceforge.net
Wed, 07 Nov 2001 07:16:18 -0800


Bugs item #478949, was opened at 2001-11-06 18:05
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=478949&group_id=5470

Category: Installation
Group: Python 2.2
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: Bruce Sherwood (bsherwood)
Assigned to: Tim Peters (tim_one)
Summary: Windows installer start menu registry

Initial Comment:
The new installer for Windows Python 2.2b1 enters a 
long string into the InstallGroup portion of the 
registry:

"C:\WINDOWS\StartMenu\Programs\Python 2.2"

Previous Windows installers entered a short string:

"Python 2.1"

I believe the long string is incorrect and the short 
string correct. For example, when I try to use the 
freeware installer InnoSetup (plus extensions) to 
create an installer for VPython, an incorrect start 
menu address is generated when I attempt to install a 
on the start menu a pointer to the idlefork version of 
IDLE. This worked fine in the past, with the short 
form registry item.




----------------------------------------------------------------------

>Comment By: Tim Peters (tim_one)
Date: 2001-11-07 07:16

Message:
Logged In: YES 
user_id=31435

Thanks for the followup, Bruce!  This is one of the 
registry entries Windows never looks at, and core Python 
doesn't either, so the only definition of "correct" 
is "looks like whatever the heck we used to do".  Don't 
change your installer!  I've changed ours instead, to use a 
different variable here -- it will be "Python 2.2" in 2.2b2.

One caution:  starting with Win2000, an ordinary user 
doesn't have enough privilege to write into the 
HKEY_LOCAL_MACHINE hive, including our installer run by an 
ordinary user.  If our installer detects that, *or* if the 
user selects the new "Non-Admin install" option, all these 
keys get written under HKEY_CURRENT_USER\etc instead.

----------------------------------------------------------------------

Comment By: Bruce Sherwood (bsherwood)
Date: 2001-11-07 06:44

Message:
Logged In: YES 
user_id=34881

Sorry; I thought "InstallGroup" was adequate ID. It's in 
HKEY_LOCAL_MACHINE, Python, PythonCore, 2.2, InstallPath, 
InstallGroup.

>From your explanation, I see that this is a feature, not a 
bug. The rule then is that starting with Python 2.2, the 
InstallGroup entry will be the full path name to the 
location of the start menu entry rather than simply "Python 
N.N" as it was in the past. I just need to change my own 
installer to expect the full path name in the future. I 
made the wrong guess in calling it "incorrect" -- it's just 
different, not incorrect. Thanks.



----------------------------------------------------------------------

Comment By: Tim Peters (tim_one)
Date: 2001-11-06 20:34

Message:
Logged In: YES 
user_id=31435

Exactly which key are you talking about?  Please give a 
full path, starting with the hive (HKLM or HKCU or 
HKCR?).  "The InstallGroup portion of the registry" doesn't 
mean much to me, so unless you spell it out I can only 
guess.

Wise did change how they define their internal %GROUP% vrbl 
between versions 5.0a (used for pre-2.2 installers) and 
8.14 (used for 2.2), and in the way you describe.  This is 
used for several purposes, though, and some clearly need 
the full path.

As to correct vs incorrect, beats me -- Python sets some 
registry entries common to all Windows programs, 
and "correct" for them means they work the way MS says they 
should; I don't know of any we get wrong in that sense.  
Other registry entries are unique to Python, and since 
neither Windows nor Python ever looks at them, I don't know 
why we even set them up (beyond that, AFAIK, we always 
have).

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=478949&group_id=5470