ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Other Software > Developer's Corner

Virtualization to Create Single EXEs from Mixed Assemblies

<< < (5/5)

David.P:
Hello Software Connoisseurs,

While the above discussion is a little over my head, perhaps there are opinions on the question of what is the best/easiest/most robust way to convert any Windows-installable software into a portable application?

Before I try out everything, especially the free Enigma Virtual Box (which doesn't seem to have a snapshots feature), furthermore paid solutions such as BoxedApp or Turbo, I would be grateful for hands-on experience any of you guys might have.

In particular, I am interested in virtualizing, or making portable, older office programs like Word 2003.

Also, is it possible to change any program settings with such a virtualized installation package when running the packaged program? I would think probably not, since these can hardly be saved back to that single exe file, right?

Many thanks already

David

Shades:
You are correct about program settings not being adjustable after the portable version is created.

And be very careful about Office 2003. While Microsoft won't care if you turn your original Office 2003 copy into a portable version for your own use, do not think that they will not come after you if that portable version of yours becomes public through any means. Do not make the mistake that Microsoft will go easy on you, because it is such an old product already. Office 2003 is functionality-wise already more than enough for most people, I get that sentiment. But all Office products are holy to Microsoft, so expect to be chased down into a (legal) corner by the zealots Microsoft employs.

And there is another thing. Most software that can create a portable version, do this by creating a system snapshot before installing the normal version of the software, then install the software and take an 'after' snapshot when the installation is finished. The differences are stored together with the executables and from that bundle a portable version is generated. Making Microsoft Office portable is very likely to fail and/or become unwieldy, as Office integrates itself very deep into Windows. Your post clearly states that you only wish Word 2003 to be portable. But any version from Office is known to share so much between applications, that with making one application portable, you might as well make all of the tools in Office portable, it will barely make a difference in the size of the generated portableapp. 

Better to use the portable version of LibreOffice, much less head-ache.

A tool I have used successfully in the past: Cameyo

Best to use a computer that has only a bare Windows installation, And it should run only the most minimal amount of background services. No Windows Update, no Windows search indexer, no printer services, no anti-virus or malware software. All those things will make the resulting portable version larger than necessary, it might even break the generated portable application. You will end up using a VM for this, it is just easier.

If you go the VM route. Create the VM and strip it down to its bare minimum. Then make a snapshot or better yet, a copy of the virtual disk file into a safe location. Now use the portabilization tool you like to create the before snapshot from all the settings inside the VM. When prompted, install the software inside the VM and when the installer is finished, the portabilization tool will take over again. If the software installer asks for a reboot, don't do that. At least with Cameyo, doing a reboot will break the portableapp generation procedure.

This portablization procedure can take its sweet time, depending on the resources available and the software itself. So be patient.

When the portableapp is finally generated, you will need to test it first. You can use the portableapp outside the VM in the host computer, for example. But any other computer, without the software ever being installed, will do. Only when you are satisfied with the resulting portableapp, you should shut down the VM, remove the whole virtual hard disk file and copy back the safety backup into the place again. So you are ready for the next piece of software to be portablized. 

If you are not satisfied with the generated portableapp, adjust settings and re-generate the portableapp. Do this until you either have a satisfactory portableapp or realize that this software doesn't lend itself to become a portableapp. The latter is a real possibility. I fully expect Word 2003 to fall into this category.

What I have noticed with portablization attempts, is that when you wish to make a portableapp that requires registration or a license key, it type of information is often not included in the generated portableapp, even when you take the time to register the software before the taking from the 'after' system snapshot.  Which is not handy when you want to portabilize a piece of software with a time-limited license, such as the ones from 'GiveAwayForThe Day'-deals or 'SharewareOnSale'-deals.

But spent the time on looking for portable versions of software that are created by the author(s) first. Quite often they have such a version available. If you see the collection of PortableApps I have collected over the years, it has become pretty impressive. It is over 30 GByte in size now and very diverse in functionality. And for all these tools I have a general or specific use. The collection would have been much, much larger if I kept everything available in portableapps form.

David.P:
Hi and thanks for your detailed information!

Meanwhile, I had performed various tests. As you say, it turned out that this should definitely be done in a fresh virtual machine. I used Windows XP in VMware Workstation Player.

In contrast to the captured installations on a work laptop with Windows 11, which took hours, turned out to be like 1.5 GB in size and did not work properly afterwards, the recording of the installation of Word 2003 in the virtual machine took only a few minutes and was smaller than 50 MB!

I had also come across Cameyo in the meantime and had used it for the capturing and packaging, in what I believe was the latest version from here.

Word 2003 packaged this way seems to run fine. However, when moving the package from the virtual machine to my desktop PC with Windows 10, I got various messages from Defender regarding alleged malware.

While I know that these are false positives, I am now hesitant to run the package on the actual target machine (my office laptop where I do not have admin privileges). If a virus is reported there, then I unfortunately have the IT department coming after me right away :huh:

Also, I use Dragon NaturallySpeaking to dictate text in Word 2003, which is also a major reason why I use this old version, besides my hundreds of macros and customizations in Word 2003.

Word 2003 still shows unmatched compatibility and speed together with NaturallySpeaking.

For this to work, NaturallySpeaking needs a DLL loaded in Word by the name of dgnword.dll. I can probably include this DLL in the virtualized Word 2003 package (using Cameyo) as well, can't I?

David.P:
Yeah!

I made sure to do the following:

- Scanned the portable Word 2003 package with the same virus scanner that our IT uses.
- Found out that this virus scanner is also listed on VirusTotal, and did not complain about the package there either.
- Switched the work laptop to airplane mode.

And then went for it and started the portable Word 2003.

And what can I say, it runs beautifully in all its Office 2003 design glory, even perfectly crisp on a 4K screen:

Virtualization to Create Single EXEs from Mixed Assemblies

Now I just have to get my settings, Normal.dot and Dragon.dll into the package as well.

By the way, any Word options that I change in the portable version are being saved!

When I close Word and open it again later, the exact settings I changed earlier are active again. Isn't that awesome.

This is probably due to the fact that the program creates a VOS folder (probably "Virtual Operating System" folder), in which all files and settings, including (virtual) registry settings, are stored.

Edit: unfortunately, my dictation program Dragon NaturallySpeaking does not recognize any dictation when I dictate in the portable version of Word. I suppose this is so because all of Word's components, DLLs etc. are stored at different paths from where they ought to be :huh:

Navigation

[0] Message Index

[*] Previous page

Go to full version