Most programs offer two methods of installation lets call them:
Express Install - This method installs the program into C:\ProgramFiles
Custom Install - This method lets you choose where it goes.
If you choose the later, you might for example install Adobe Photosho[p into D:\Adobe\Photoshop and much of the files will be installed there. But two other things will happen.
1. Adobe will still install what it calls "Common Files" into C:\ProgramFiles. These are various files that are common to multiple applications from Adobe and when you install any other programs from Adobe, they want those files to be where the install program expects them to be.
2. Windows has a registry which you might think of as switches or pathways which allow / direct certain interactions with the OS.
Now I'm not quite sure what you mean when you say you are copying it to your desktop ... are you moving just the launch icon or the entire program folder to a new location. But the problem is that by moving the location the rest of the program and registry doesn't know where it went.
1. If you are just trying to put an item on the desktop, then the proper procedure would be to create new icon ...
Right click desktop, select new , shortcut and then browse to the location of the program's exe file.
2. If you are trying to relocate the program itself, then a reinstall is required.
a. If there are no customizations you want to keep, just uninstall ten reinstall.
b. If there are, then it's bit more complicated.
-Create a folder for the proposed new location ... say D:\Adobe
-Copy the "Photoshop" Folder from Folder C:\ProgramFiles\Adobe\Photoshop and paste it in D:\Adobe
-Reinstall Adobe Photoshop to the new location D:\Adobe\Photoshop ... making sure you don't wind up with D:\Adobe\Photoshop\Photoshop
That last step will make all necessary registry entries and create necessary links while retaining and program customizations, toolbars etc. you have made over the years.
-Finally delete the old C:\ProgramFiles\Adobe\Photoshop folder