09 February 2012

The closest thing to Thinstall

Portable app will getting more interesting with this available open source tool: a registry emulation
The fabled ThinApp (formerly Thinstall) is an application level virtualizer for windows that handle both filesystem and registry redirection. Each have true virtualization, one of the simplest thing of filesystem redirection is by altering some common environment variable like %USERPROFILE% %PROGRAMFILES% and so on at user session level. But this method is nowhere near what Thinstall do. Say, what if the program call for hardcoded path?

Few years ago I've looking for OSS alternative for Thinstall, if I recall there was one, a research product (I think) which come as source code only, too bad I forgot its name.. but seems to be discontinued or become commercial software (dunno).

Now let's leave that one alone because OSS generally more simple and timid when it come to Windows (no COM, no ActiveX although now there are some). Now about registry... Like it or not no matter how clean and standalone an application is, it will indirectly ask for many information from registry via windows so it's good to emulate it.

And this app "WinAPIOverride32" http://jacquelin.potier.free.fr/winapioverride32/ don't let the name fool you (me too) for thinking "oh an open source alternative of procmon" but wait till I unpack the zip file, a registry emulator being bundled! (Umm.. well registry emulation is basically overriding one of Windows API) While still in beta (source code available) the documentation is minimum but clear enough and there is video too http://jacquelin.potier.free.fr/winapioverride32/videos/registryemulation.htm

For large OSS app like OpenOffice, this tool could be a lifesaver (no compromised functionality). I'm still playing with it tonight :) will see how far it can go, for my first try I want to emulate userlevel fonts availability by emulate HKLM\Microsoft\Windows NT\CurrentVersion\Fonts a.k.a adding fonts without admin rights and put it in user accessible location.

Check it out dudes! oh caveat that I don't feel:  it's currently a 32bit only

2 comments:

  1. Hello, for application virtualization I usually use ThinApp or Spoon Studio (formerly Xenocode), but there are some alternatives for them that although may not be all open source at least they're free.

    One of them is Cameyo (which I recall being open source but never digged into its code http://www.cameyo.com http://code.google.com/p/cameyo/), another would be AppStract but I never actually tried this one (http://code.google.com/p/appstract/).

    Enigma's Virtual Box is free but not open source as far as I know (http://www.enigmaprotector.com/en/aboutvb.html), may be worth a try.

    Anyway, hope that helps choosing one in case you're looking for a free one.

    ReplyDelete
  2. @Alex
    Thanks for the links

    I've tried Cameyo but from its EULA it's not OSS

    "Reproduction and Distribution: You may freely reproduce and distribute copies of the Software. Reselling the Software or integrating it into another software requires written consent by CYO. The CYO opening splash screens should never be tampered or removed."

    The one in code.google is API to its actual virtualizer hence a promotion to Cameyo itself. This make sense though as it's arguably not necessary for the virtualizer itself to be OSS. But I really want to know how it works

    Appstract seems the real thing despite .NET based.

    BTW I seems can't find the registry emulator source code of WinAPIOverride32. Maybe because it's beta, hopefully it's not intentional :(

    ReplyDelete