If you were to wipe your C: drive and Windows installation, you may be able to use the programs on your E: drive. It all depends on how those programs were written.
Some programs were developed without the need for registry entries or configuration files that would normally be located on the C: drive. However, these tend to be the more simple programs, such as text editors. More complex programs will require these objects, however some programs will recreate them at launch if they are missing. Typically, they revert to their default settings and any customizations you made would be gone.
Unfortunately, there is no way to know which programs can operate this way, without digging through manuals, forums, SU, etc...
You could make backup images your C: and E: drives with CloneZilla and then wipe your C: drive, do a clean install and test each program. Depending on the number of applications, that could take a while. If it turned out that too many of the programs didnt not function, you could then restore your C: and E: drives. Obviously, restoring C: returns your original OS, but restoring E: would restore any settings that were changed to the E: drive.
Now as for a program to do this for you, I believe several "installer" and "uninstaller" programs are capable of tracking all the changes during a program's installation and export those settings, however since they werent used during the original installation, you are most likely out of luck.
In the future, I would suggest making several images. Install a fresh copy of Windows and update it. Then take an image. That way, you will always have a clean copy of Windows to restore to. This is much faster than installing. Then install your applications, customizations, and updates. Then take a another image. This allows you to restore to an image with your OS and applications in a "clean" state.
The registry files, which are called "hives", are not hidden. They are the files-without-extensions in \Windows\System32\config
. For example, the "system" hive (seen in regedit as HKEY_LOCAL_MACHINE\System
) is \Windows\System32\config\System
. And, each user's user profile hive is ntuser.dat
in that user's "home directory", which in XP was \Documents and settings\username
.
To read these, just run regedit
and select either HKEY_LOCAL_MACHINE
or HKEY_USER
in the left pane. Then go to File | Load hive
. Browse to where the old hive file is and select it. Then it will prompt for a key name. Make up a name that will be the "parent" key for everything in that hive. (Don't use something like System
that's already there. You could use old_system
though.) OK out and you will find your new parent key name under e.g. 'HKEY_LOCAL_MACHINE' and the contents of the hive under there.
You don't need to worry about the .sav
, etc., files that have the same base name. regedit
will handle those for you.
File permissions and registry key permissions will apply, so if the keys you're trying to look at aren't readable by Everyone, you'll likely have to take ownership of them and set a new permissions list.
To unload the hive, select the hive's "parent" key in the left pane (like old_system
in the above example) and use File | Unload hive
.
Loading a hive is not persistent across boots, so all of these manually loaded hives will be automatically unloaded at shutdown and not reloaded again unless you go through this again. Loading a hive does take some pageable kernel space memory, but the size is rather small for modern systems, os there's no great harm if you forget to do the unload.
Best Answer
It's not impossible. It is though if you think you can do it with only registry edits. After typing the instructions for almost two hours I decided to delete it all and say this instead.
The ONLY way involves several steps and cannnot be done in one sitting. After the main process you will have to watch your system for about two weeks so that you can immediately address any issues which will undoubtedly arise.
To do this you will have to have knowledge in the following:
Registry Edits
This is the area that will make you have to monitor your system for the following weeks. It is impossible to know and have memorized all the keys that are linked to the folders you wish to move because to do so would mean you have memorize the entire registry structure and all its link between every possible key.
Don't trip, all you need to know is the main ones and be willing to watch your system. You will be able to troubleshoot out the keys you missed if you write everything down, have time and patence.
Command Prompt
You do not need to have advance skill here. What you will be doing is basically the same one line command over and over depending on how many main directories (folders) you want to move. For example: C:\Program Files is equal to one (1) time you will have to type the command yet it will move "Program Files" and all the subdirectories (everything in it). Take heed though; you will be running the commands in command prompt prior to windows booting up (requires an install or repair disc).
The junctions will also be deleted and created here but that is not the issue concerning them.
Junctions
This is the part that is so mysterious and fatal to your systems successful transplant. Windows has hundreds of "symbolic links" or "junction points" (the two are interchangable) that are the foundation of its structure. Basically, though it is a little more complex, a junction is a reference to another location. A basic example is your library in windows 7 (which consists of more than one junction by the way). Watch out because there are whole directory structures that are nonexistant has they are actually a structure of junctions. An example is the C:\Users\All Users... There really is no such thing as an "All Users" Profile in Windows, it is just a structure of junctions. And of course the hidden directory C:\Documents and Settings... is the same thing.
I am not trying to scare but warn. In about two to three days after, if not sooner, you will start to get "no such interface supported" dialog box every time you try to open something! IN OTHER WORDS EVERYTHING YOU CLICK ON WILL RETURN "NO SUCH INTERFACE SUPPORTED" DIALOG BOX AND I MEAN EVERYTHING!!! This is only if you do not get all the junctions right.
On the other hand, the command prompt command is just a short one liner to delete the existing one and a just as short one liner to create the new. But you will have to type the two for about forty different junctions( ten minutes if you have a pre-made list).
Conclusion
If this is something you are willing to try and do, knowing that you are riskings your entire OS, please go to my profile to get my email address and hit me up. I will tell you how to get your list of junctions, the registry keys to edit, how to get into command prompt before Windows boots up, and of course the commands to use. If you listen and do exactly has instructed, you will do just fine. H-e-double hockey sticks I am about to attempt to move my user profile in Windows Home Server to another hdd myself...
Disclaimer — I am not responsible for the loss of data and/or, depending on the folders attempted to move, the loss of the entire OS of any who email me requesting instructions on how to do the aforementioned. I freely declare that I am trained with advanced skill and that I do know beyond doubt that this process is proven to work. However, it is dangerous and MUST be completed without the slightest deviation from the outlined procedure. Therefore your actions and their results are your own.