Link to home
Start Free TrialLog in
Avatar of HilltownHealthCenter
HilltownHealthCenter

asked on

Can't default to XP Start Menu (Comes up Classic Menu for all users)

I have purchased a number of "off-lease" Dell Optiplex computers with XP Pro 5.1.2600 SP2 installed. All these machines bring up the Classic Start Menu for all new users. I want to change the default to be the standard XP menu before I deploy them, but can't find any way to do it.

I have tried the Object Policy Editor (it was not set there).

I have tried [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoSimpleStartMenu"=dword:00000000
(this was the solution I accepted last time I brought this question here, I thought it worked, but does not.)

Any other things to try would be appreciated.
Avatar of Nick Denny
Nick Denny
Flag of United Kingdom of Great Britain and Northern Ireland image

Is the windows "themes" service running?
Avatar of Kenneniah
Kenneniah

"NoSimpleStartMenu" only controls whether users can use the XP style menu or not. It will not automatically set them to XP. When set to 0, it only means users can change it to XP style if through the UI.

The actual setting for which start menu style to use is in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer "ShellState"
When in Edit Binary Value mode it's the bottom left (just next to 0020) hex number.
00 = classic start menu
02 = XP style start menu
Avatar of HilltownHealthCenter

ASKER

Yes it is. What is that?
Since this is happening to new users, you might check to see if there is a ShellState in HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer that is setting it to classic for new users.
Since I'm here...the Themes service is what's needed for running XP style themes. Without the service no matter what choices are selected, everything runs in classic mode.
To Kenneniah:

There is no "ShellState" key listed at that location.
By default there shouldn't be so that's fine. I was just curious if someone had added one to the default user.
Just to clarify I'm understanding exactly what you are trying to do....
Does it let you change to the XP style manually?
If so, the problem you having is when a new user logs in it defaults to classic for them, but existing users once changed it's fine?
There is only one "ShellState" at:

HKEY_USERS\S-1-5-21-3938136317-1116244201-2234105134-500\Software\Microsoft\Windows\CurrentVersion\Explorer

It has a binary value.
I am able to change to XP style manually, and it will stick for that user. Each new user gets the Classic.
Copy and paste the following into notepad, then save it with a .reg extension. Double-click the .reg file to import it into the registry. From then on, any new user should default to the XP start menu.

Windows Registry Editor Version 5.00

[HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer]
"ShellState"=hex:24,00,00,00,33,a8,01,00,00,00,00,00,00,00,00,00,02,00,00,00,\
  01,00,00,00,0d,00,00,00,00,00,00,00,02,00,00,00
Tried it. I get an error:

"Cannot import C:<...>startmenu.reg: The specified file is not a registry script. You can only import binary registry files from within the registry editor."

I also tried joining the two binary lines on one line (without the "\"), same error.
Got it to run by adding "Windows Registry Editor Version 5.00"
to the top line of the file. Waiting reboot to see if it works!
Unfortunately, it did not change the situation. I tried several user logins.
I have confirmed that the registry entry installed as advertised.
Hmm, makes me wonder if they directly edited or copied over the default user hive. They might have set up a profile then copied it over top of C:\Documents and Settings\Default User.

Open regedit. Select HKEY_USERS, then go to File and click on Load Hive. Browse to Documents and Settings\Default User, select NTUSER.DAT and hit Open. Name it DEF when asked.
When done browse to HKEY_USERS\Def\Software\Microsoft\Windows\CurrentVersion\Explorer and see if "ShellState" exists there.
If so, double-click on it and a window named "Edit Binary Value" should come up. What number is on the bottom line just to the right of 0020?

The bottom line is:

0020 02 00 00 00
So this looks like Default User\ NTUSER.DAT is calling for  the XP menu, but I am still seeing the Classic?
Any more ideas for this question? I have changed every instance of ShellState in the registry to be:
last line = 0020 02 00 00 00

The problem persists.
Just to make sure, you are talking about logging in as a user that has never logged into this system before?
If a user has ever logged in before, their profile has already been created. The only time the default user profile gets used is when creating a new profile. If a user already has a profile, the only way to change the menu style is to log in as them and change it.
Yes, I have absolutely tried several user logins who have never used this workstation. They all come up with the single column start menu.
Strange, everything seems to point to the default being correct.
The only other things I can think of would be some leftover policy or logon script. However, the only policy I can think of is of course the one that forces the classic menu, yet that would also make it so you couldn't change it back. But just to make sure....since you've already checked gpedit.msc (User Configuration|Adminstrative Templates|Start Menu and Taskbar) and HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer, also check the same section in HKEY_CURRENT_USER and HKEY_USERS\.Default to make sure the policy isn't somehow in there.

Then in gpedit.msc under User Configuration|Windows Settings|Scripts make sure no logon scripts are set, might not hurt to check Startup scripts under Computer Configuration.

Last go to C:\WINDOWS\system32\GroupPolicy and delete the User and Machine folders to make sure there aren't any local group policies.
Hmm also were these machines originally on a Domain? And if so, have you changed them to Workgroup?
Because if they were on a domain, even though not connected they will have cached domain policy. Changing them to Workgroup should remove this cache.
As I understand it, the machines are cloned, en masse, from a single setup. The techs at the company that provides them said they set the menu to classic because it saves several minutes in the cloning time. (They also seemed mystified as to why I can't change the default.)

Here's another interesting difference in this XP from the XPPSP2 I usually install. It is the kind that opens to some sort of initial setup wizard, very irritating background music (with loud woodblock till you want to smash it), lots of dark blue... Makes you walk through a whole setup before the music shuts off. Maybe that helps identify the particular flavor of OS they are shipping. I have about decided that it will be quicker to just reinstall the OS from my own distribution... Too bad though, might be 15 - 20 machines before we're done. We have been purchasing about 3 a month.

I will check for logon scripts and startup scripts as soon as I find a little time.
Some NEW information:

When I add a new user to the local machine, a ShellState object appears in HKEY_USERS\<new user's_SID>\Software\Microsoft\Windows\CurrentVersion\Explorer with content for the Classic menu, and in the HKEY_CURRENT_USER for the same key, when the user logs in. Changing either ShellState will change the menu for that user from then on.

I still cannot find the mechanism that assigns this classic menu ShellState as the default to each new user.
"It is the kind that opens to some sort of initial setup wizard, very irritating background music ...."

Bascially just means they used sysprep and resealed the OS. But that does lead to a possibilty...with SP2 when running sysrep it ends up pulling default user settings from the Administrator profile. If you log in as the default Administrator account what is the start menu style set at?

http://support.microsoft.com/kb/887816

When I initially log in using the password I assigned during the SysPrep startup wizard, the administrator gets the classic menu. However, I changed this account to XP menu the first time I used it. Subsequent new users still get the classic menu.
To Kenneniah:

It really sounds to me as if you may be right on top of this issue. Were exactly would the info come from if sysprep  "ends up pulling default user settings from the Administrator profile" ? I could look at one of my (unaltered) new boxes and check this...
ASKER CERTIFIED SOLUTION
Avatar of Kenneniah
Kenneniah

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I appreciate that Kenneniah:spent a lot of time spent on this question. The issue was not solved, but I learned a lot about the registry. I don't think we are going to get any closer to the solution at this point. Looks like I will need to reload the OS when I purchase these machines.