The registry method.. might work....
1. Close ALL programs on your desktop.
2. Use Regedt32 to navigate to the following value names and change the data values to reflect the new location:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entversion\ProgramFilesDir
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entversion\CommonFilesDir
3. For Windows 2000/XP, also modify:
HKEY_LOCAL_MACHINE\Software\Microsoft\Inetstp\Prog ramFilesPath
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Contro l\Session Manager\SFC\CommonFilesDir
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Contro l\Session Manager\SFC\ProgramFilesDir
4. MOVE the current Program Files folder, and sub-folders, to the new location.
5. Search ALL shortcuts, *.lnk files, on the current \Program Files drive, for \Program Files content. For each shortcut returned, right click the shortcut and press Properties. Change any affected Target: and Start in:.
6. Use Regedit to search for Data that contains \Program Files\ and change any affected data values.
7. Shutdown and restart your computer.
The reason this 'mostly' works is that some installation programs do NOT check the ProgramFilesDir and CommonFilesDir registry entries.
NOTE: On Windows 2000/XP, the CommonProgramFiles environment variable is set from the CommonFilesDir value name and the ProgramFiles environment variable is set from the ProgramFilesDir value name.
NOTE: On Windows 2000/XP, you can limit your *.lnk search to the Documents and Settings folder and sub-folders, plus the SystemRoot%\Profiles folder. On Windows NT, use the SystemRoot%\Profiles folder. If you are doing this for your network, search any server based profile location.
Well, nowadays, when you start a setup and it want to have the folder where it should be installed to, there are programs which will query the registry and retrieve the default program folder, for example C:\Program Files
However, the application does NOT use this as variable so it will write c:\Program Files\MyApp to its internal settings. When you later on change the location of the default program folder, the application does not care about this. It still has C:\Program Files\MyApp in its settings.
Of course, it would be no problem for an application developer to write the program in a way that it always look for the default program folder, but I don't know any application that does this.
Therefore, when you need to move the default programs folder, just patching one value inside the registry is not enough. You need to to scan the ENTIRE registry for settings that point to that old location and change them to the new location. Of course, you also need to scan for INI, CFG files etc. where this folder might also be used.
And finally, there is no guarantee that this will work and every application works fine. For example, some applications store their configuration in a database. Since there are dozens databases available, no application can scan all of them. In that case, the app might act "strange" when you try to start it from it's new location.
Now comin to an easy way... Tweak UI(free, part of the microsoft powertoys) might help u out.
Details: *www.infopackets.com/channels/en/windows/gazette/2003/20030611_modify_program_files_path_part_2.htm
Also.. have only read about it but never tried it.
You might b able 2 create "symbolic links" under 2K/XP which allow you to create folders on one drive which act as aliases to another drive. Some software to accomplish symbolic links are *www.pearlmagik.com/winbolic/ & *www.rekenwonder.com/linkmagic.htm.