# Reverse engineer an installed program?



## NRA_guy (Jun 9, 2015)

It might violate a software license agreement, but it seems like there would be pretty strong demand for software that would reverse engineer an installed program.

For example, I have an old, free photo editing program that is no longer available. It came on a CD that came with a digital camera 10 to 15 years ago. I no longer have the CD with the setup file on it.

When I buy a new PC or upgrade my existing PC to Windows 10, I will lose that program.

It seems to me that it would be fairly easy to write software that goes into a PC (including the program directory and the registry) and recreates the setup installation program for any installed program.

If such software exists, I could not find it.

(In my case, I was actually able to move the photo editing program by moving the entire directory where the photo editing package was stored, but that does not typically work.)


----------



## Nevada (Sep 9, 2004)

What's the name of that photo editor?


----------



## NRA_guy (Jun 9, 2015)

It's "ViewAhead". A great, simple photo editor that came with a FujiFilm digital camera long ago.

As I said, I still have it on my desktop PC and I was able to migrate it to a Windows 10 laptop by copying the entire ViewAhead directory to the new laptop and pointing a shortcut to the vaPhotoEditor.exe file.

This:










See:
https://viewahead-photo-center.software.informer.com/

I also use other programs such as "Paint.net" (PaintDotNet.exe), which is pretty good and more powerful than ViewAhead---but more complicated.

I tried PhotoShop, but it was too complicated for me.

I also HATE those photo editing programs that first search your whole PC for .jpg files and put them all in your "album".


----------



## HermitJohn (May 10, 2002)

You can do any .exe file that just runs and doesnt "install". Oh a free relatively simple image program for windows is Irfanview. It works pretty well. It will ask what type files you want it to open automatically. You can choose none. Anybody interested, it will run fine in WINE on linux systems. Though I mostly use mtpaint that comes with Puppy Linux. I never found great need for more powerful image programs.


----------



## TroyT (Jun 24, 2008)

Reverse engineering a windows application install is possible if there is a cached copy of the installer. Most MSI based installers cache a copy of the actual installer so that a program can be updated or modified. In some cases the msi is also used for uninstalls. If a person found the cached MSI file and opened it with a tool like Orca, one could determine what files were copied where along will various registry keys. A simpler option would be to find a piece of software that can migrate your data and apps from your old PC to the new PC. Not all software can be migrated because some older software is not compatible with the new OS versions.


----------



## NRA_guy (Jun 9, 2015)

HermitJohn said:


> You can do any .exe file that just runs and doesnt "install". Oh a free relatively simple image program for windows is Irfanview. It works pretty well. It will ask what type files you want it to open automatically. You can choose none. Anybody interested, it will run fine in WINE on linux systems. Though I mostly use mtpaint that comes with Puppy Linux. I never found great need for more powerful image programs.


Thanks.

Yeah, I remember the old days when moving a program was as simple as moving the .exe file. Software vendors saw how easy it was, too; so they and Microsoft put an end to that for nearly all programs.

I'll take a look at Irfanview.


----------



## NRA_guy (Jun 9, 2015)

TroyT said:


> Reverse engineering a windows application install is possible if there is a cached copy of the installer. Most MSI based installers cache a copy of the actual installer so that a program can be updated or modified. In some cases the msi is also used for uninstalls. If a person found the cached MSI file and opened it with a tool like Orca, one could determine what files were copied where along will various registry keys. A simpler option would be to find a piece of software that can migrate your data and apps from your old PC to the new PC. Not all software can be migrated because some older software is not compatible with the new OS versions.


Thanks. 

I understand, but it seems to me that a computer "knows" where all of the bits and pieces of an installed program reside; so it should be possible to write a program that tracks down all of those bit and pieces, copies them, and puts them in an installation file (equivalent to the original setup file) for installing in a second PC.

It would be OK with me if the program also automatically uninstalled the program from the original PC in order to prevent copywrite issues.


----------



## TroyT (Jun 24, 2008)

NRA_guy said:


> I understand, but it seems to me that a computer "knows" where all of the bits and pieces of an installed program reside; so it should be possible to write a program that tracks down all of those bit and pieces, copies them, and puts them in an installation file (equivalent to the original setup file) for installing in a second PC.
> 
> It would be OK with me if the program also automatically uninstalled the program from the original PC in order to prevent copywrite issues.


Kinda. Some files get registered with the system (com objects) so more than one piece of software can use them, others are in the Path of the system, some are in know folders, like My Documents, etc. while still others are referenced in the system registry or for older software, INI files. Just depends on the software. 

That being said if you are running XP or newer on your old and new systems there is software out there that will move most software and data from your old system to your new system.


----------

