How to move an installed program to another drive on Windows

Last reviewed 22 October 2026 · Windows 10 and 11

You can move an installed program to another drive without reinstalling it. Copy the folder with robocopy, then create a junction with mklink /J at the old path so Windows still finds it. Check it works, then delete the old copy.

Before you start

Step by step

This example moves C:\Program Files\Foo to D:\Moved Programs\Foo. Change the names to match your program.

1. Copy it, with permissions:

robocopy "C:\Program Files\Foo" "D:\Moved Programs\Foo" /E /COPY:DATSO /DCOPY:DAT /R:1 /W:1

2. Rename the original, so you still have it:

rename "C:\Program Files\Foo" Foo.old

3. Create a junction at the old path that points to the new one:

mklink /J "C:\Program Files\Foo" "D:\Moved Programs\Foo"

A junction is a folder-shaped link. Windows and the program still see C:\Program Files\Foo, but the files live on D:.

4. Start the program and check it works, including an update or a save. Only then delete Foo.old.

How to undo it

rmdir "C:\Program Files\Foo"
robocopy "D:\Moved Programs\Foo" "C:\Program Files\Foo" /E /COPY:DATSO /DCOPY:DAT
Use plain rmdir on the junction, never rmdir /s. Plain rmdir removes only the link. Adding /s on some Windows versions can delete the files it points to.

What can go wrong

The same thing in Trimmel

Trimmel's Move apps page does these steps for you. It lists the programs Windows reports as installed with their size, copies with permissions kept (/COPY:DATSO), creates the junction, and marks each moved program so Move back undoes it in one click. It refuses removable and network drives and shows a warning if a destination goes missing.

Related guides

Rather not type commands?

Trimmel moves programs for you with permissions kept, and moves them back in one click.

Get Trimmel, free