Change Default Installation Directory In Windows 7 & Vista
Posted October 19, 2008 – 5:09 pm in: Registry tweaks, Vista Tweaks, Windows 7, XP Tweaks[ad#ad-1]
By default Windows installs all the programs in C:\Program Files directory, you might want to change it if your C drive is running out of free space. Moreover, if you like to install any antivirus program like Kaspersky or Norton you need to use this tweak as they won’t give an option to change the default installation directory during product installation.
To start with this guide, make sure you have enough free space in your new directory which you are going to make as default one.You need to do a small registry change in order to change your default installation directory as follows:
1. Type “regedit” in Vista start menu search box or in Run dialog box (for XP) and hit enter to continue.
2. Navigate to the following registry key in the Registry Editor:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

3. Locate the value named “ProgramFilesDir” and change the default value “C:\Program Files” to your new directory path(address).

4. Close the registry editor and reboot your system to apply the change.
5. Good luck!
PS: This tweak should work fine with Windows XP,2000 and upcoming Windows 7.
Tags: Windows 7, Windows 7 how to
- 14 Excellent Windows 7 themes
- How to make bootable USB
- 27 Beautiful Vista logon screens
- How to install Windows 7 from USB
- Remove Watermark from Windows 7 desktop
- Windows 7 tips & tricks
- Windows 7 inside out free chapters
- Windows 7 step by step free chapters
- What's new in Windows 7
- Windows 7 impact world wide
- Using Windows XP mode in Windows 7
- Power management in Windows 7


9 Comments
Good,thanks.
One problem. Doing this (at least in Windows 7) breaks Windows’ directory awareness of programs that are already installed (errors with WMP and others)
Thanks for the update. I will look into to the issue and update here.
True I just did the mod in win7 and WMP didn’t work any longer.
Also if you make the changes in regedit it only modifies the 64 registry. Therefore anything installed in the x86 program files still default to original c: program files…
Unless you also change the 32bit registry.
But like mentioned by JC it breaks other things therefore not really worth it. Hopefully there is a way around it.
Not realy a usefull instruction. Has changed the register entry (ProgramFilesDir) in my a new installation directory. Still when i’m installing Ultra ISO and Crysis, the setup will automatically pick the c:\program files directory. Also tried to change the program files (x86) entry but then IE wont work, and as stated above probally WMP wont work either.
Is there a other solution for this?
Sorry for the inconvenience, Polly. At the same time I am not aware of any other workarounds for this.
Changed it, rebooted, new installs still go to c:
I got this working on Windows 7 64 bit. Here’s what I did:
In addition to the registry keys in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion you also need to change the ones in HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion.
Then, you need to copy all the files in c:\Program files (x86) and c:\program files to where ever your new locations are. Then don’t delete the original directories, since not all programs are smart enough to make the switch.
Obviously, this works best on a fresh install where the program file directories are only a few hundred megabytes.
Any (well, most) new programs you install will figure out that your new location is the default program files directory.
Thank you Jay, this is exactly what I was looking for!