I did some registry Traces and found out where Explorer is actually looking for for it's values. One key thing is the BagMRU Size. The BagMRU size is the maximum number of folders that Vista will remember the view settings on. In XP it was 400, and in Vista it is 5000 but the value is stored in the wrong place in the registry. Let me give a quick history now.
Windows XP stored this information in the following locations:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\BagMRU]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags]
You could delete these four keys and it would remove all your folder customizations.
To increase the cache size, you would modify the BagMRU Size setting at the following locations:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam]
Now, the kicker, Vista doesn't store this information there anymore. It stores it at:
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU]
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags]
So any tweaks for XP aren't going to work for Vista because they update the wrong location.
Now, the real kicker and goof on Microsoft's part. If you do a fresh install of vista, and look at the Registry. You will find values for BagMRU Size at the following locations:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam]
So when Vista was created, Microsoft changed Explorer to look in a different spot, but they didn't move the spot in the registry. Everyone assumed that since the value was there from scratch, that that is where you updated it, especially since that is where you went in XP. The value you find there will be 5000, which really should be enough, but now you will discover why no matter what you put in there, it doesn't work. Look at the following screen shot:
This is a registry trace that I did on Explorer.exe when you open it. Look at the highlighted line. Take note of where Explorer.exe is looking for the BagMRU Size. ???? It is looking in [HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell] which is the NEW location Explorer looks. Problem is, Microsoft never put in a value for BagMRU Size at that location. I have no idea what value it is using when it can't find this value but it isn't very high. Notice the "NAME NOT FOUND" over in the Result column for the Registry Trace.
Here is what happens when the entry exists, I have my BagMRU size set to 20,000. Notice the trace reflects this:
Here is the registry file that will actually fix your folders. The file also includes a line (in the correct key) that will turn off auto template discovery. This is nice because once you run the registry file and restart, every folder on your computer will be set to ALL ITEMS for the template. You can then go into whatever folder you want and set the default template to something else and apply to subfolders (Apply to subfolders didn't work EVER in XP.. Grrr Microsoft). Remove that entry in the Registry File if you want Vista to auto determine the template for folders on the computer (I don't know why anyone would want this myself). Take what I have below and put in a text file and rename extension to .REG.
Windows Registry Editor Version 5.00
; This is a Vista ONLY Folder Repair tool, This tool will force Vista to remember your folder settings by
; Modifying registry entries. Descriptions below explain what each step is doing.
; Steps:
; 1. Open up explorer and go to Tools->Folder Options->View and uncheck Remember each folder's View settings
; 2. Double Click this registry File
; 3. Restart Computer before doing anything else
; 4. Once restarted, bring up explorer again and put the Check back that was removed in step 1.
; 5. All folders on the computer should now be in the "All Items" format. Since Auto Discovery is now off
; you will need to go to your shell folders (Pictures, Videos, Contacts, Music, etc.) and set them to the
; template you want, apply to subfolders, etc.
; Clear out Folder Settings left over from XP:
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\BagMRU]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags]
; Clear out Folder Settings for Vista
[-HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU]
[-HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags]
; Modify the Folder Storage space to 20000, this will allow the saving of settings for up to 20000 different folders.
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell]
"BagMRU Size"=dword:00004e20
; Turn off Vista's Auto Template Discovery. This keeps vista from deciding on it's own what type
; of Folder you have (ie, picture, videos, docs, etc) This will keep vista from changing what you
; have already set for a folder as well. Notice this value is in the Bags Key that was deleted
; in the settings above. Remember this is there, because if you decide to manually go delete
; your Bags Key, you will lose this value and auto-discovery will turn back on again.
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell]
"FolderType"="NotSpecified"
Here is the Zip file containing the .REG file typed out above:
VistaFolderSettings.zip (1.04K)
Number of downloads: 1770
This post has been edited by Mephisto: 01 October 2008 - 12:49 AM
iEntry 10th Anniversary
Vista Support
About Us
Sign In
Register
Help




MultiQuote


