Is there a utility available that can help you find all the installed files of a particular program such as dll files installed into the system folder etc?

I have often found that when planning on re-formatting a drive many people do not have all of their original software anymore especially for programs downloaded from the net.
In the past I have been able to transfer the program folder to another computer on the network and then attempt to run the program, note what dll files it says are missing, and then transfer them across also before wiping the drive. However this is only possible when you can set the program up on another comp which isnt always the case.
Is there an easier way to do this?