Here on dotTech we have talked about virtualization technology plenty of times. However, all previous articles have discussed computer-level virtualization. In other words, they talked about virtual machines, how users can virtualize their computers, etc. What if a user wanted to use virtualization technology but on an applications-level as opposed to computer-level; where would the user turn to?
There is the mostly-defunct Altiris Software Virtualization Solution, which is still available for download for free but has been turned into Symantec Endpoint Virtualization Suite (a paid program) after Alitris Software got bought-out by Symantec Corporation (thanks Symantec). Or, there is VMware ThinApp which is clearly not intended for home-use considering you could buy a car in the money you would spend purchasing ThinApp. That then leaves us with Cameyo.
Cameyo is a fairly new program that allows users to easily virtualize at an application-level:
What do I mean “virtualize at an application-level”? To put it simply, Cameyo takes a program and condenses it down into one .EXE file. In other words, Cameyo allows users to make programs portable. (Of course a virtualized app is not the exact same as a natively portable app, but I think you get my point.)
Using Cameyo is very easy:
- Run Cameyo (after installing it) and click on “Capture installation”. Cameyo will take a “snapshot” of your computer:
The time it takes to complete the snapshot varies on how powerful your computer is and how much hard drive space you are using. For what it is worth, it took around 2 minutes for the snapshot to complete for me.
- After the snapshot has completed, you will need to install the application you want to virtualize:
Install the program you want to virtualize and click “Install done” when the installation has finished.
- After installation has finished, you will need to wait while Cameyo takes another snapshot of your computer:
Like the initial snapshot, the time it takes to complete the snapshot varies on how powerful your computer is and how much hard drive space you are using. It took around 2 minutes for this post-installation snapshot to complete for me.
- After the post-installation snapshot, you will need to set the name of the package, where to save the package, and what is the “main executable” for the program you are trying to virtualize:
Take note you must select (left-click) an .EXE listed under “Application’s main executable” before you click “OK”. For the most part there should only be one .EXE listed there, but for some programs there may be multiple .EXEs (such as Paragon Software products which has its individual components broken down into individual .EXEs). In this case, either select the .EXE of a “launcher” (if applicable), or select multiple .EXEs as you see fit. (Yes, you can select multiple .EXEs.)
- Next, Cameyo will build the package…
…and prompt you when everything has finished:
When everything has finished, go to the location where the package was saved and run the .EXE to launch your virtualized program:
If you are looking to put this virtualized package on a portable device, such as a USB drive, simply copy the whole folder onto the device. There is no need to install Cameyo on every computer that you want to run your virtualized applications; just run the .EXE of the respective virtualized package and you are good to go.
Cameyo allows users to edit packages after they have been created, doing things like changing the name of the packages, changing the main executable, add/deleting files, and viewing registry entries. To do this, run Cameyo and either click on the package which you want to edit, or click on “Edit existing package” and load the package which you want to edit:
Be sure to save the package after you are done editing it (via the “File” menu).
As far as I can tell, while you can add/remove the files included in a package, you cannot add/remove/modify registry entries included in the package. For registry entries the only thing you can change is “Isolation” from “Merge” to “Write&Copy”; however, I honestly have no idea what this “Isolation” feature does since there is no proper documentation about Cameyo.
Here are a few important aspects to note about Cameyo:
- Cameyo allows you to virtualize multiple programs into one package. If you plan on doing that, install all programs before hitting the “Install done” button. Also, when being asked to select the “main executable”, select the .EXEs for all the programs.
Take note if you are going to virtualize multiple programs together, realize that all the programs you virtualize will be launched at the same time whenever you run the final virtualized package. Hence, I would recommend only virtualizing one program in one package – create a new package for each program – so you aren’t forced to run all programs at the same time when you don’t want to.
- As described above, Cameyo works by taking snapshots of your computer before and after installation and records all changes made to your computer by comparing these two snapshots. This snapshot method means four things:
- To create a virtual package of a program, you have to actually install it on your computer so Cameyo can record it. You may uninstall the program after the package has been created.
- If you want to virtualize a software you already have installed, you first need to uninstall it then re-install while you have Cameyo running.
- Cameyo will capture and record all changes made to your computer, not just the installation of a software. So, for example, while testing Cameyo I took screenshots in-between the two snapshots. So, in the final package, Cameyo included these new screenshots even though the screenshots had nothing to do with the program that was installed. If you find that Cameyo has included too much “junk” (i.e. non-related files) in the virtualized package, you can always go in and edit the package to remove those files.
- During the “installation” phase of Cameyo, be sure to take all initialization steps (such as registering the program) and install any add-ons/plugins/third-party software before you hit the “Install done” button. This ensures that the virtualized package will include everything that you want. (I highly recommend before you hit the “Install done” button to take the program through its initial first steps, i.e. run it, register it if applicable, and close it.)
- Cameyo makes an outbound call to a server (the developer’s server I presume) right before the initial snapshot is taken when creating a new package:
I am not particularly sure why the outbound call is made and what it does during that outbound call but for what it is worth, VirusTotal found Cameyo to be clean (only 1/42 AVs found it to be infected)
- Not all programs can be virtualized properly. You may find that some programs do not function properly after you have virtualized them when you try to run the programs via the package you created. (This is just a technical limitation with some programs.) I highly suggest you test a virtualized package after you create it to make sure the program fully works. It takes trial-and-error to find out which programs will work when they have been virtualized and which have not.
- Cameyo is still in Beta and it is not 100% bug free (although I didn’t find anything majorly wrong with the program). When I first installed Cameyo, it would crash when I tried to use the “Package Editor”. However, I uninstalled Cameyo and reinstalled it and the “Package Editor” works just fine now. Furthermore, you may find Cameyo’s “Recent packages” list does not properly refresh after you create a new package; only after manually loading the package via “Package Editor” is the package displayed in “Recent packages”.
- Currently Cameyo has no ability to allow virtualized applications to be set as “default launchers” for files. For example, if you virtualize Microsoft Word, you cannot set the virtualized Microsoft Word as the default opener for .DOC files. The developer has stated the ability to set virtualized applications as “default launchers” will be introduced into Cameyo in future versions.
- Cameyo doesn’t have very good documentation nor is there very much information on who the developer of Cameyo is. There is a support forum, though.
- Cameyo has an SDK which developers may be interested in.
That said, why would anyone want to virtualize a program? I can think of a couple of reasons…
- The desire to make a non-portable program portable.
- The desire to not lose a time-limited freebie (e.g. GOTD giveaways).
…and I am sure other dotTechies can give many more.
Last but not least, here is a short 4 minute video – created by the developer - that demonstrates Cameyo in action. Take special note of how the developer downloads Flash and Java for Opera before clicking on the “Install done” button to ensure the virutalized package of Opera has Flash and Java:
You may download Cameyo from the following links:
Version reviewed: v1.4
Supported OS: Unknown
Download size: 1.6 MB
[via AddictiveTips]






Email article













Another great thing about application-level virtualization is things like installing iTunes–it’s extremely bloated and installs several autorun items, so it’s the kind of nuisance that is best to be avoided, but if you have an iPod it’s also the best program to use.
@Locutus: True but you still have to going through the annoying initial installation so you can have Cameyo capture the installation.
@Ashraf: Oh, it doesn’t revert your system back to the snapshot?
@Locutus: No, is that not clear in the review? I will update it to include this point.
“The desire to not lose a time-limited freebie (e.g. GOTD giveaways).” makes this a must have.
Loving it.
Seems like a great ideas for netbook users since netbooks don’t have optical drives. For example, it seems possible for one to virtualize wordperfect on your desktop, copy it to a removable drive, and then copy of the virtualized wordperfect to the netbook. Am I right on this? Thanks.
@AB: That sounds right. It also sounds super convenient compared to making an ISO like I would’ve.
@Ashraf
You are so right about the many discussions of visualizing. visualizing at the application level is something that I can make use of since I like trying new SW.
Thank you for posting and forgive me if I missed it but how to you discard or add the program if you decide you want to get rid of it or keep it.
Can you clarify “it doesn’t revert your system back to the snapshot?”
Ashraf: First, thanks for another great recommendation! Second, do you think it works (or did you test it) with Photoshop, such as the new CS5? I am about to purchase it and man would it be great to take it with me and be able to use it on more than one system!
@AB: Yeah, sounds right. Let us know if it works properly for you.
@ebony: If you no longer want a virtual copy of a program, simply delete it – it will be gone.
It seems like Locutus’ comment about “it doesn’t revert your system back to the snapshot” is confusing people. Let me clarify. Cameyo monitors installations and records them – it does not interact with the installations in any way. You have to install the program by yourself – so Cameyo can record it – and you need to uninstall the program by yourself (if you want to uninstall the program). Cameyo is not a “restore” program; Cameyo makes no changes whatsoever to your computer, aside from creating the virtual package.
@IT3: You are welcome! Unfortunately I don’t know if it will properly virtualize Photoshop or not – I don’t have PS =(. Please do let us know if it works for you!
Sounds great, for the GOTD giveaways should we run the program before its contacted to GOTD server to make sure its still valid or wait until the actuall instalation
Thanks,
James McManus
Very nice, Ashraf!!
An extremely welcome alternative to ThinApp. I look forward to testing this program. Thanks!!!
Thanks for the article, it looks a good soft, Is it possible to define isolation mode during setup, or the only mode currently being Merged mode: the application can read and write directly into the system.
The second mode is known as the WriteCopy, helps prevent the application to write to sensitive areas.It is also likely that applications based on the Framework. Net or using drivers do not appreciate the method.
What if you want to virtualize a program you have installed and it is one of those programs that don’t clean up the registry properly when they are uninstalled ? I guess Cameyo will not be able to pick up the necessary registry values since there will be no changes to the “already-existing-from-previous-install” keys.
is there a way to change the default sandbox location ?
ex : put the sanbox within the same directory as the portable software
Regarding the defunct Altiris SVS, I’d like to point out that it was turned into Symantec Workspace Virtualization which is alive and free for home use and if you have a license key for the Altiris SVS Personal, it is valid with it.
I used a program like this once before and there was a problem that wasn’t addressed in the documentation. I didn’t see that issue mentioned in association with this app either. The software I’m installing requires a reboot of the PC (I’m assuming modifications essential to running the app take place after the reboot). The previous virtualization app I was using didn’t return after the reboot, so I didn’t get (in my opinion) an accurate snapshot.
Any comments about this app with regard to installs that require a reboot?
@Ashraf,
Thanks again for another great heads-up program.
My question is, would Returnil allow me to do an install of a new program while capturing it with Cameyo? Then I can just reboot when done and not have to uninstall the program I want a virtual of or go through a clean up to get rid of all the junk in the registry.
@eee:
Found Software Virtualization Solution (SVS) 2.1.2084 for free on cNet.
Symantec appears to offer a 120 day evaluation then pay for it.
Ken
Hey Ashraf,
let’s suppose you have an APP in ur HD infected by spyware your AV and/or Antispyware missed to detect.
Everybody knows that the use of the PORTABLE version of a SW is usually aimed at avoiding messing up the registry of your PC….right?
So the question is: if Cameyo turns every APP into a PORTABLE one, is this FREEBIE able to isolate the infected APP stored in ur HD in a similar way Sandboxie or Geswall usually do or does it affect the registry anyway??
And how about the license of commercial products such us Office???
Can this freebie be used to run a purchased licence of Office in another PC??
Has anyone ever heard of Portable App Creator? You can read about it here: http://portableapps.com/node/9909. It seems that you can install directly on a flash drive, and I think it does a clean-up of the registry afterwards.
@Jamster Mc: The way i understand it is, wait until after it has registered itself, then package it. That way you have the registration number. Somebody, anybody, PLEASE correct me if i am wrong.
@Jim Carter
The software allows you to reboot your system and the program will work fine and create the .EXE like it would do if you didnt have to reboot the computer, worked fine for me.
Jamster Mc
Hey Ashraf!!
Let’s suppose you have purchased a license of a commercial product such us Office which can be used on a single PC…ok??
Now, for what I can see, this freebie can turn any APP into a PORTABLE one, allowing you to run any (commercial or non) APP wherever and whenever you want even by using a different PC…is it like this??
Well, I’m not an expert in IT law but as far as I’m concerned modifying and/or redistributing closed-source executables can actually be considered as a clear violation of the license of a commercial program.
What do you make of it??
And so, the idea with using this with GOTD offerings:
Am I correct that this doesn’t stop the need to install the GOTD offering the day of the offer; but that it allows you to delete the offering off your computer after running Cameyo and installing the GOTD offering, and then to run the GOTD program in the virtualized form? And so, this would be a way to share a GOTD offer with friends after the offer date; or to run a GOTD offer after you’ve reformatted your computer, or moved to a new one/new hard drive and reinstalled programs rather than copied your earlier computer image to the new computer?
And so, a new “protocol” for GOTD offers might be: start Cameyo and the virtualization process up; install the GOTD offer (the day of the offer); finish the virtualization process; and keep the virtualization of the offer around for the future, in case you need it. I guess the only “hassle” this would add is the time to do the virtualization process–in Ashraf’s case, around 4 minutes plus Cameyo transactional time.
Interesting! :)
Does anyone know, does running the program in virtualized form add any extra lag time to the program? Or any other complications?