I have a few applications that absolutely refuse to install into anything but C:\Program Files or C:\Program Files(x86). Changing the registry keys for default install folders doesn't seem to provide any satisfaction and so now I'm wondering about throwing a NTFS junction in there to force these pesky applications to cooperate.

There are files currently in use within Windows so it's quite likely I am not going to be able to do this within the active OS. Is there some bootable Windows 7 system tools that would allow me to make this happen? Seems I will need the ability to copy files (with permissions!) from one drive to another, as well as make the junction for Windows.


Yes, you can create a link via mklink /j "C:\Program Files\foo1" "E:\foo1" if the application doesn't support it directly. I do this for Steam Applications (games) and it works quite well.

As far as utilities that allow you to do this, have you tried Safe Mode?

This link describes using xcopy to preserve attributes

Also, make sure to run a command prompt with Administrative privileges. You'll need cmd.exe for mklink (as its not directly available in powershell)

Hope this helps!

| improve this answer | |
  • One problem that may be encountered is that some installers still use 8.3 file names in their registry references, and copying from C: to D: will not necessarily preserve these. The xxcopy utility will preserve them and, although the company has ceased trading, the freeware version is still available on the download link. There may be current software that preserves 8.3 names, but I have been happy with xxcopy over the years, so I have never seen the need to look for an alternative. – AFH Jun 5 '18 at 20:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy