Showing posts with label Start Menu. Show all posts
Showing posts with label Start Menu. Show all posts

Sunday, December 11, 2011

Moving Bookmarks to the Start Menu

I was using Firefox 7.0.1 in Windows 7.  I had created a customized Start Menu that contained not only the shortcuts to installed programs, but also the full contents of portable programs.  I had saved that Start Menu to a drive other than drive C, so that it would survive if I reinstalled or upgraded Windows.  So then my preferred arrangement of shortcuts and programs in my customized Start Menu would also survive.  I could also carry it around on a USB thumb drive and use it on other computers, at least for my portables and for those installed programs that they had installed in the same (default) locations on drive C.

In Firefox, I had a lot of bookmarks. (If I'd had them in Internet Explorer or some other browser, I probably could have imported them into Firefox.)  I wasn't really happy with my existing bookmark arrangement.  It occurred to me that I could incorporate the bookmarks into my custom Start Menu.  That way, my bookmarks would be portable too, and my web-based tools would be in the same place as my installed and portable tools.  Within the Start Menu, I could then sort the web links into subfolders.  For instance, the ones that had to do with multimedia could go into the Multimedia folder along with my image editing programs.  This would eliminate the task of coordinating bookmarks among various browsers.  Also, when I discovered a cool new bit of freeware that I didn't actually need right then, I wouldn't have to download and keep a copy that would eventually become outdated, or that I would forget what it did or why I had ever downloaded it in the first place.  Instead, I could just put into my Start Menu a link to the webpage that explained the program.

There would be some drawbacks as well.  It might be harder to detect duplicates in some cases.  Also, I might have to drill down through more levels of a Start Menu than of a Bookmarks folder to get where I wanted to go.  Still, since my existing approach to bookmarks did not work, I decided the advantages of a new approach would probably outweigh the disadvantages.

I didn't want to convert my bookmarks into a single HTML file.  As I had previously learned, such a file would have required constant updating and rearrangement, so as to put links in the desired order.  To clarify, the idea was taht I would save the bookmarks as individual links (shortcuts) that I could see in Windows Explorer.

To make that happen, I tried using the Bookmarks manager in Firefox (Bookmarks > Show All Bookmarks).  I found that I could cut and paste, or drag, individual bookmarks from the manager (or from the Bookmarks toolbar) to the Start Menu in Windows Explorer.  But if I tried to move multiple bookmarks at once, it didn't work.  The manager didn't give me an option of exporting bookmarks as individual link files.  There also didn't seem to be any way of bulk-handling Bookmark subfolders containing bookmarks.  I searched and saw various suggestions and requests involving other browsers, but as far as I could tell neither Chrome, Opera, nor Internet Explorer had an option to mass-export favorites or bookmarks as individual URL files.  A search of Firefox add-ons yielded nothing.

Some of my bookmarks were years old.  Before exporting them, whether in bulk or individually, I wanted to verify that the bookmarked website was still active.  To do this, I used the CheckPlaces add-on.  I had to go into the Firefox > Tools > Add-Ons menu to run it.  Within maybe five minutes, it concluded that I had 4,325 bookmarks; and of those, it said I had 1,395 duplicates.  This was not a surprise; my bookmarks folder was a screwed-up accumulation of years of repeated attempts at organization.  I told CheckPlaces to delete all duplicates.  For the other errors it found, I canceled out and went back to the CheckPlaces starting menu.  I changed Concurrency from 10 to 5, in case my relatively slow Internet connection was producing false errors in attempts to reach webpages.  I turned off "Load favicons" and ran it again.  Oddly, it still found 1,395 duplicates within 4,325 total bookmarks.  There wasn't a user's manual.  It turned out that I had to click the OK button to make the deletion permanent.  I did that, and then ran CheckPlaces again.  This time, it found only 1,711 bookmarks.  That didn't add up.  When I told it to delete duplicates, did that mean it deleted all copies of a duplicated bookmark?  Just then, Xmarks popped up and told me that my set of bookmarks on the computer was significantly smaller than my backup set on their server -- but they said I now had 1,866 bookmarks, not 1,711.  I decided to download the Xmarks backup and start over with CheckPlaces, this time paying closer attention to what it was deleting.  Spot checks suggested that it had done the sensible thing and deleted duplicates, but not all copies -- that is, if A and B matched, it looked like it deleted only one of them, not both.  So that was good.  The larger-than-expected number of deletions appeared to be due to the fact that I had three or more copies of some bookmarks.  Next, the CheckPlaces list of supposedly "Questionable" websites seemed to called for manual inspection: some were indeed duds, but others weren't. But then it looked like a webpage had to return a 301 error in order to get onto that list; and I found that a 301 error meant that the page had been moved but that there would typically be a forwarding address. So I ran the option, in CheckPlaces, to Fix All 301s.  Spot checks (and the age of many links) also suggested that I might just go ahead and delete the ones that CheckPlaces had identified as Failed for one reason or another.  I reran CheckPlaces a couple of times, deleting a few more duplicates and failed links.  In my final run, my original set of 4,325 bookmarks had shrunk to 1,322 -- still a lot, but more manageable.

So I had somewhat shrunk my list of bookmarks.  But I still had the main problem of getting them from Firefox to Windows Explorer.  How was I going to do that?  I thought of opening the bookmarks and then copying from the History manager instead, but in Firefox 8.0.1 that behaved the same as the Bookmark manager. Another possibility might have been to go ahead and export the bookmarks to an HTML file, one per bookmark folder; use Snap Links or Multi Links to open all of the links on that page; and then drag the icon from the Firefox address bar to the appropriate Windows Explorer folder, for each webpage that opened successfully.

But then I discovered that the Firefox bookmark manager (Bookmarks > Show All Bookmarks) would allow me to do the same thing more easily.  For the bookmarks that were in the Bookmarks Toolbar, I could select a bunch of links within a folder, right-click on them, and choose Open All in Tabs.  This way, I could see what was in those webpages, and decide if I really needed to save a link to them (using the same approach of dragging the link to Windows Explorer).  Then I could delete those that I had opened, and thereby gradually whittle down the accumulated mess that my Firefox bookmarks had become.  If I wanted to have a list of bookmarks in Firefox, I would still have the option of recreating it by opening and bookmarking a bunch of links from the Start Menu.

So I dragged all my bookmarks to the Bookmarks Toolbar and began opening them and manually dragging links to a single folder that I called "Unsorted Bookmarks," from where I would further sort them into various places in my Start Menu.  I decided that I would probably do a better job of this if I did it gradually, sorting just a few bookmarks at a time, paying careful attention rather than racing through it.  So I added a line to a batch file that was scheduled to run regularly on my computer.  That line would open a Windows Explorer session focused on that Unsorted Bookmarks folder, as a reminder to me.  So now, every day or week or however often I had scheduled that batch file, that Windows Explorer session would be one of the things that would start up, reminding me that it was time to examine another 10 or 20 bookmarks in Firefox.  At this point, then, it seemed that the project was pretty clearly in view, and it would just take a while to finish.

Friday, January 21, 2011

Windows 7: The INSTALL Partition

For a long time, probably since the 1980s, I had kept my Windows installation on drive C and my data on drive D.  (Drives, or partitions of drives, can be readily created within Windows 7 and also by partition manager programs.  GParted, included in the downloadable Ubuntu CD, has been the most reliable partitioning programs for my purposes in recent years.)

Having the data on drive D had several advantages.  One was that I could back up drives C and D on different schedules.  Once I got a good Windows installation set up on drive C, I didn't need to back it up very often.  I'd just make a drive image (using Acronis True Image in the past few years), and I'd make an updated image backup just when I had done some significant new program installation or adjustment.  By contrast, I would want to back up my data on drive D on at least a daily basis.  Of course, when I made the image of drive C, I would need someplace to put it other than drive C.  An external drive was a possibility, assuming the bootable CD would recognize it, but it would tend to be slower, and this would be complete downtime, when it would not be possible to do other work.  It worked the other way, too:  having the data on a separate partition meant that I could completely reinstall Windows without affecting or even worrying about my data.

There were exceptions to that last statement.  Some program configurations were so detailed, time-consuming, and/or oft-changing as to constitute a sort of data.  Not the kind of data I was supposed to be working on, but data nonetheless.  An example:  Firefox add-ons.  It could take a half-hour or more to find, install, and configure my Firefox add-ons after doing a new Windows installation.  Some add-ons allowed me to export my saved settings, but obviously I would not want to store those on drive C; they'd be wiped out if I reinstalled Windows sometime down the line.

I also found it was handy to keep a local copy of the programs that I would install in Windows, after installing the Windows operating system itself.  I did not want to have to re-download all those programs and re-invent all of the things I had previously figured out about installing them.  So instead I had folders containing the programs to install, with installation notes in accompanying text files, and I named the folders in such a way as to guide me in the installation sequence that worked best (e.g., "01 Motherboard Drivers").  There were also quite a few program installers that I tried and uninstalled, or hadn't gotten around to installing.  Also, some ISOs -- ready-to-burn CD images that I had downloaded but hadn't burned to CD, or wanted to keep because it was a hassle to re-download a 700MB image.  I had collected these sorts of things, not only for Windows, but also for Ubuntu.

I accumulated about 75GB of this stuff.  Keeping it all on drive D meant that my daily data backups were swelling up with all this material that didn't need to be backed up every day.  So at some point I moved a bunch of it over to its own partition, with occasional backups.  What I kept on drive D was mostly stuff that I was actually using in my current installation.  One example:  those Firefox settings files.

Sometime in the late 1990s, I discovered that I could move my Start Menu to drive D.  This would have the advantages mentioned above, including especially the fact that my custom-arranged Start Menu (top-level folders:  Productivity, Online, Multimedia, Tools, Startup, Miscellany) would not have to be rearranged each time I installed Windows.  As long as I installed everything in its default installation location, the shortcuts in the Start Menu would come back to life as soon as I reinstalled the target program where the shortcut expected to find it.

A few months before writing this post, I came to realize that, of course, I could also install my portable applications in the Start Menu.  This would be ungainly in the sense that a bottom-level folder in the Start Menu might contain a slew of program files instead of a nice, orderly collection of shortcuts.  But it was handy for keeping everything that ran in one place, where I could copy it to a jump drive and use considerable parts of it on any other Windows machine.  The Start Menu, wherever located, could also be accessed and synchronized on a network, so that I only needed to configure the Start Menu once and would then have it available for any computer I would attach to my home network.  (Making it available did require a registry tweak.)

Putting the portable applications in the Start Menu had an unwanted side effect.  Many portable apps (especially those coordinated by PortableApps.com) used many of the same program files.  That was a problem because I liked to use DoubleKiller to delete duplicate files on drive D.  I couldn't do that anymore, at this point, because it would detect tons of duplicative portable program files that were supposed to be there.  I looked for a different duplicate remover, one that would allow me to exclude folders like the Start Menu folder, but ultimately decided to stay with DoubleKiller for now.  The reason was that I did not want to risk that, one fine day, I would forget to exclude the Start Menu from a DoubleKiller sweep, and (although this was unlikely) would punch the wrong button and delete that Start Menu from my hard drive.

What I decided to do, instead, was to move the Start Menu so that it would join those other program files -- programs to be installed, etc. -- in their own partition.  I called it INSTALL and gave it a letter of W, so that its location would not be affected by the connecting and disconnecting of various USB drives and whatnot.  So then hopefully the shortcuts in it would stay in place, and would require no further adjustment forever and ever.

Right now, unfortunately, they did require adjustment.  I modified the registry tweak to point toward drive W:\Start Menu rather than D:\Installation\Start Menu.  This caused almost no problems.  The main issue was just that a bunch of shortcuts were now dysfunctional, in that they pointed at executable files on D that were now on W.  I ran Glary Registry Repair 3.3.  It identified 165 new registry errors.  As I scrolled down the list, I noticed that a huge number of the problems identified by Glary were links to IrfanView on D.  I considered doing a global registry search and replace for the IrfanView location -- or, indeed, for all references, changing them from D to W, perhaps with the aid of a global registry search-and-replace tool like Registry Toolkit ($25) or Registry Replacer ($15) or Replace Registry Values (free).  But then I decided it might be safer to let Glary fix those dud links and then do a search in a registry editor for any remaining references to D:\Installation|Start Menu.  I used O&O RegEditor to do that search.  I was now down to a total of just 29 registry references to D:\Installation\Start Menu.  I was going to edit them in O&O, but then decided not to.  As long as they weren't hurting me, I was better off just leaving them alone.  One ill-advised registry edit could cost me an hour or more for recover or restoration.

So this was pretty much the end of the project, aside from some continuing cleanup, correction of shortcuts, etc.  I now had an INSTALL partition, labeled as drive W, containing my customized, shared Start Menu and installers for various programs.  I could now run DoubleKiller on drive D without worrying that it might knock out program files, and without having to do manual exclusions to focus it on the data duplicates that I was seeking.

Tuesday, January 4, 2011

Windows 7: A Shared, Relocated Start Menu

As described in another post, in Windows XP I had moved my Start Menu to a separate location.  That location was on a networked drive, where it would be backed up regularly, would not be affected by Windows reinstallations (as long as I reinstalled programs on each computer back to the same places as before), and would be available to multiple machines as needed.  It had grown into a monster that included not only shortcuts to installed programs but also the full contents of portable programs.

Now that I was installing Windows 7, I wanted it to function the same way.  Unfortunately, Windows 7 was not set up to accommodate this desire.  Apparently there had been a NoSimpleStartMenu registry option in Vista that would have returned the system to the classic WinXP Start Menu, but I wasn't finding much guidance on that registry tweak in Win7.  In my own experimentation, it didn't work.

There were some third-party utilities that would give me back the classic Start Menu.  I installed and played briefly with one of them.  It was the Classic Start Menu option within Classic Shell.  (Apparently there was at least one other utility calling itself Classic Start Menu, but that one wasn't free.)  Classic Windows Start Menu was another option:  it would apparently give me a Windows 7 Aero style combined with classic functionality, which sounded great.  It seemed to be a bit clunky, though, in the sense that it added entries for Create Folder, Create Shortcut, and Sort in each submenu.  It didn't look like it offered as many settings as Classic Start Menu, but that initial impression could have been mistaken.

Classic Start Menu seemed to be the most developed utility for changing at least the looks if not also the functionality of the Win7 Start Menu.  In my brief introductory dabbling, it was actually better than the original WinXP Start Menu in terms of configurability, and it left the original Win7 Start Menu still available via Shift-Click.  Because of its features, I decided to stay with it for a while, if possible, rather than just use a relatively simple set of registry edits and adjustments that might have accomplished some of the same results.  The idea behind those registry edits was to rewire the Favorites option on the Win7 start menu so that it would point to C:\ProgramData.

That pointer to C:\ProgramData might have been useful, for my purposes, if C:\ProgramData had been customizable.  It just wasn't.  It appeared that, as I installed more programs, it (and therefore a Start Menu built around it) would get very cluttered.  I had the same concern about Classic Start Menu:  I couldn't tell how to redirect it to look at the network drive.  Their FAQs didn't have a question on exactly that.  It sounded like their main plan was that I should drag and drop items into their settings dialog.  This, I thought, would not work for a shared Start Menu:  the changes would take effect only on the computer where I made them.  There appeared to be some possibility of future expansion in their Settings > Customize Start Menu tab > Programs Menu > right-click > Edit Item > Link option, but presently that option was grayed out.  The Classic Shell people had a list of alternative utilities, but it sounded like they tended to have bugs.  I looked at their forum, but didn't see a question on relocating the Start Menu, so I posted a question on it.  The question got no response.

I tried to take a look at C:\Documents and Settings, which is where the Start Menu shortcuts were saved in WinXP.  (This was a hidden folder; I had already adjusted settings in Windows Explorer > Tools to see it.)  When I went to that folder in Windows Explorer, I got an error:  "Location is not available.  C:\Documents and Settings is not accessible.  Access is denied."  A search on that led to a page that seemed to be telling me that, actually, Documents and Settings was just a link to C:\Users.  Another page said C:\Documents and Settings was a "junction point" that existed for backwards compatibility.

So I tried C:\Users instead.  That opened up.  There wasn't a Start Menu under Ray (my original username) because I had deleted that username.  I was only using Administrator.  I saw a Start Menu under Administrator, and I also saw one under All Users, as well as one under Default.  There might also have been one under Default User too; but when I tried to go into there, or into any of these several other Users subfolders, I got the "not accessible" error again, even though I was logged in as Administrator.  To defeat that, I entered a command to turn off User Access Control (UAC):

C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f
But that didn't do it.  The message was still basically the same:  "C:\Users\All Users\Start Menu is not accessible."  (Later, I saw that Win7 had a message for me, saying that I had to reboot to turn off UAC.)  I did another search and found a page that said that, actually, that was a junction point too.  Where I *really* wanted to go under each username there at C:\Users, it seemed, was the AppData\Roaming\Microsoft\Windows\Start Menu folder.  I found those folders for Administrator and All Users.  So -- wasn't there a registry location pointing the Start Menu to those folders, the way WinXP's registry would point to specific folders (and could be modified to point to others instead)?

As I thought about it, I wondered if I could use the approach (above) of doing a registry edit that would rewire the Favorites button in the classic Start Menu, and have it point to my shared Start Menu at D:\Installation\Start Menu.  That had already occurred to me, but the problem there was that, if I couldn't move items from C:\ProgramData, my Start Menu on D would be just ignoring the items on C.  But now I realized that I probably could create shortcuts to the items on C, and put those in my Start Menu on D.

So I started to do the registry tweak as described in the sources cited above.  But when I got to HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders, I saw that there was in fact not only an entry for Favorites, which is what the abovementioned tweak would use, but also for Start Menu itself.  Well.  So why not just redirect that?

My WinXP registry edits had redirected a number of items in that same folder, having to do with not only the Start Menu but also with other folders.  I decided to see if I could retain most of those redirections in the .reg file I was preparing to tweak new Windows 7 installations.  But for present purposes, I basically closed other programs, ran a .reg file with lines like these:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]

"Administrative Tools"="D:\\Installation\\Start Menu"
"Programs"="D:\\Installation\\Start Menu\\Programs"
"Startup"="D:\\Installation\\Start Menu\\Programs\\Startup"
"Start Menu"="D:\\Installation\\Start Menu"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Programs"="D:\\Installation\\Start Menu\\Programs"
"Startup"="D:\\Installation\\Start Menu\\Programs\\Startup"
"Start Menu"="D:\\Installation\\Start Menu"
and sat back to see what would happen.  The registry changes were visible instantly in regedit.  On reboot, Win7 gave me an error message:
Location is not available
D:\Current refers to a location that is unavailable.
That was one of the locations I had specified in the reg file.  None of the registry edits had worked; I was still looking at the same Start Menu, or less.  Worse, the system wouldn't even run Windows Explorer.  I restarted in Safe Mode (i.e., I held F8 after the first BIOS bootup screen), but decided to try the System Recovery option instead.  But the last System Restore was even older than the most recent image backup, which seemed odd, so I went with the image.  (Apparently I was tired.  This was at day's end.  I didn't try checking the "Show more restore points" when I ran rstrui.exe.)  I probably could have just restored my backup of the affected registry keys, but I decided this would be a good first chance to test Win7's built-in system image feature.  I ran it and went to bed.

When I got up, the image restore had worked, so I tried some of those registry edits again, one at a time.  This time, though, I saved System Restore points along the way, using Control Panel > System > System protection > Create.  I saw that I had left out some steps.  First, as described in a separate post, I tried to move the fonts folder.  That failed.  It was OK; it was just an attempt to avoid having to save any new fonts in a separate location, to be restored as an extra step of any future system reinstallation. 

Some time passed, as I worked on other parts of the Win7 installation.  Installation of other programs added more icons to the Start Menu.  When those other installations were done, I came back to this draft post.

I decided to keep using the Classic Start Menu utility.  It worked for my purposes.  I saved its settings to a backup file.  With the registry edits shown in my post entitled "Windows 7 Installation - First Try," I was able to get the Start button to point to my shared Start Menu at D:\Installation\Start Menu.  With Classic Start Menu running, I clicked on Start > right-clicked on Programs > Properties > Location .  I specified the place on drive D where I kept my customized Start Menu > Programs folder.  I clicked Move and then closed out of that dialog.  I then went into C:\ProgramData\Microsoft\Windows\StartMenu and into the AppData\Roaming\Microsoft\Windows\Start Menu folder under each username at C:\Users, to see if there were any other program shortcuts that I would want to move to that location on D, or any other installed programs there to which I would want to link by shortcut.  There were none.

Other than some rearranging, that was it.  I had a Windows 7 Start Menu on drive D.  Drive D could be a network share, or it could be mirrored to other computers, as described in another post I was developing at about this same time.

Friday, September 17, 2010

Windows XP: Integrating the Start Menu with a Portable Apps Tree

I had come up with a tentative list of portable applications to use in Windows XP, and had arranged the program folders for those apps in a tree structure under five main categories:  Multimedia, Online, Productivity, Tools, and Miscellany.  The question for me was, how do I combine that hierarchy with the similar hierarchy that I used for the shortcuts in my Windows XP Start Menu?

That question arose because, if the two weren't combined, I would have to search in two separate places for a program that I wanted to run.  First, I would search my Start Menu; and then, I would search my set of portable apps.  Portable apps were, almost by definition, not ordinarily installed on the computer, and therefore did not tend to create their own shortcuts in the Start Menu.  So unless I created shortcuts for my portable apps (and went through the hassle of keeping the shortcuts up to date with the actual portable apps that I was finding and using), I would have the set of shortcuts installed in the Start Menu by the installed programs, and then I would have the separate set of portable apps.

(There were alternatives.  I had recently seen a program that would let me list the programs that I wanted to run, regardless of where they might be.  But that program hadn't looked very appealing to me.  Even if I didn't absolutely have to have a single set of programs and shortcuts, that was what made sense to me at this point.)

The concept, here, was that I would wind up with a single hierarchical Start Menu that would contain all of the shortcuts to my installed programs, plus all of the program folders for my portable apps.  Obviously, I would not want this to reside on drive C, where all my portable apps would be wiped out whenever I reinstalled Windows.  I had already moved my Start Menu to drive D.

The simple answer, of course, was just do it -- just combine the two, there on drive D.  The result would be relatively portable, as long as the machines where I used it would all use the default locations for program installation.  That is, the portable apps would run wherever -- I would be clicking directly on their executables -- and the shortcuts to installed programs would run too, as long as they were always installed in the same places, so that the shortcuts on my Start Menu could find them.  On machines where some programs weren't installed, or weren't installed in the right places, the shortcuts would simply fail to run.

With this plan in mind, I organized the combined set of portable app program folders and shortcuts into a single tree.  To get the system to see them, I added this to the registry:

; Set locations for Start Menu and special folders
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]
"Start Menu"="D:\\Installation\\Start Menu" 
"Programs"="D:\\Installation\\Start Menu\\Programs"
"Startup"="D:\\Installation\\Start Menu\\Programs\\Startup"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Start Menu"="D:\\Installation\\Start Menu" 
"Programs"="D:\\Installation\\Start Menu\\Programs"
"Startup"="D:\\Installation\\Start Menu\\Programs\\Startup"
"Administrative Tools"="D:\\Installation\\Start Menu\\Programs\\Miscellany\\Administrative Tools"
 

With that registry change, right-clicking on the Start button and choosing Explore would open a copy of Windows Explorer in the new Start Menu location on D.  It did not work that way with right-clicking Start > Explore All Users, though.  That just put me in the traditional Start Menu location (C:\Documents and Settings\All Users\Start Menu).  I also found that additional program installations would put their Start Menu icons in the traditional location, and I would have to move them over to the new location by hand.  So apparently there were still some rough edges to smooth out.

Generally, though, I had the result I wanted.  I had a Start Menu that would not only be preserved on drive D when I reinstalled Windows, but would also be portable.  The programs on it would run on any machine, as long as either (a) they were genuinely portable apps (i.e., I was clicking on their executables) or (b) they were installed in the default locations on the computer where I was using this Start Menu.

Thursday, September 16, 2010

Move the Start Menu to a Different Folder

I was using Windows XP.  I had a customized Start Menu.  I didn't want to lose my customizations.  For one thing, I had rearranged shortcuts into categories that made more sense to me (e.g., Multimedia, with subcategories for video, audio, and images).  Also, I had shortcuts to portable programs (i.e., programs that didn't need to be reinstalled, every time I reinstalled Windows).  I had a folder on drive D that was dedicated to portable programs, and each had a link on my Start Menu.  I could wipe out drive C and reinstall Windows, and those programs would still be already installed.  I would just need to create another link to it; and that is one of the steps I wanted to avoid having to re-do.  I wanted to have that link, and its place in my customized Start Menu, already saved.

At first, I tried the approach of just copying my Start Menu from drive C to a backup location on drive D.  My Start Menu was already simplified:  I was the only user of my computer, so I had moved everything from C:\Documents and Settings\[username]\Start Menu to C:\Documents and Settings\All Users\Start Menu.  So I would just copy the consolidated Start Menu from C:\Documents and Settings\All Users\Start Menu to someplace on D.  Then, as soon as I reinstalled Windows, I would copy that start menu back to C.  I would then reinstall my programs (the ones that weren't standalones, already installed and ready to go on D) and would re-sort the start menu shortcuts into my preferred categories.  But now I wanted to go one step further and have those shortcuts already pre-installed too, so basically I would just delete the newly re-created start menu on C and instruct the registry to look automatically to the backup location on D.  So now it wouldn't be a backup anymore; that location on D would be my actual start menu.

I found an indication that the default locations of the Start Menu were specified by Start Menu registry entries at [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\] and at [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\].  Changing these would supposedly change the default location of the Start Menu folder, so that "all subsequent data will be saved at the new location by default."  That was fine, as far as it went, but my registry already had other entries pointing to the old location.  So I thought I would try doing a global search-and-replace.  WinXP's built-in Regedit wouldn't do this, so I needed an alternative.  I started by reading a rather lengthy discussion of freeware registry editors.  Based on that discussion, I decided to try RegEditX.  It seemed I didn't really need the optional (and shareware) Registry Crawler add-in.  I also downloaded RegAlyzer as an alternative.  Other recommended freeware alternatives that I didn't explore or download included RegScanner, Vilma Software Registry Explorer, Regseeker, Resplendent Registrar Registry Manager Lite, and Registrar.

RegEditX's help file described the program as an add-in to Windows's basic Regedit.  It really was Regedit with a few things added.  The first thing I did, in RegEditX, was to export a full copy of the registry, as a backup.  But then I didn't see a global search-and-replace option, or a nifty export-changes option, so I thought I might try RegAlyzer.  It didn't have global search-and-replace either.  But when I did a Find (looking for "\Start Menu"), it ran four hours and still didn't seem to have found anything, whereas Regedit found hits within a few seconds.  I ran it again.  This time it started finding stuff right away; but after the first 15 hits (which it found within a minute or so), it froze at HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\xmlprov.  And there it stayed for another couple of hours.  I verified, in plain old Regedit, that there were indeed occurrences of "\Start Menu" in later registry branches.

Ultimately, I found a simple solution for this problem and incorporated it into a registry script called Mega.reg that I used to make a number of registry changes all at once, as part of a tweaked Windos XP installation.