Is it possible to create an isolated environment to install 3rd party application into?

I am looking for a utility / method to install 3rd part applications, such has embedded compilers, into its own isolated environment, including registry. On Mac OS X I use homebrew to achieve this. Being a Mac convert I realize that the two OS are dramatically different, however seeing how useful this would be I hoped that it is achievable in Windows as well. I am on the verge of a new computer, so I will have a fresh clean install that I would like to take advantage.

Current Thoughts
I have looked into two solutions so far:

  • buildout: which is predominantly used to manage Python installations, doesn't apply in general.

  • Sandboxie: which is targeted to use as a malware deterrent, but it disallows me to install two versions of the same application. So I need it to be an isolated environment as well as a work-environment to switch between.

Update
I gave Cameyo a shot and would like to report that it does work pretty well for normal applications. I tried it out on ST Visual Develop and Ride 7 (STM8 compatible IDEs) and they opened and ran well. I packaged them on Visa 32bit and ran them on Win 7 64bit with no trouble at all. However, the command line tools such as the compilers did not play so well. I suspect because the CLI(command line interface) tools are embedded in the virtual exe, so far, I am unable to point to their location within the IDE. Without the IDE being able to call the compilers, they are about useless.

I will continue to research this and report any changes.


Solution 1:

You could virtualize the applications themselves with a program such as ThinApp (formerly Thinstall). It wraps the executable in a VM so that all file and registry access is done to a virtual file-system and registry that is stored in a folder. Of course it requires a little bit of work to analyze and wrap each program, but once that’s done, you can then deploy them to the clients as you would any other program.

Similarly, you could portableize the programs, but that is not as secure as virtualizing them.

Solution 2:

If you have the OS install disc, you could look into using a virtual machine like VirtualBox.