Two of my favorite shareware programs are KeyText and TrayDay, both from MJMSoft. I’ve used them at home for years but I gave some thought to installing them on my USB key drive so I can use them at work. These two programs do save their settings to the registry so they aren’t exactly portable, but it is possible to work around that.
The procedure is the same for both KeyText and TrayDay, but to keep things simple, I’m going to describe how to make a virtually portable edition of KeyText.
First I install KeyText as I usually do. I then put in my registration code to unlock the software and change the program settings to my liking.
Then I install TrayDay. Like KeyText, I put in my registration code and change the program settings.
Next I create a folder on my USB key drive called MJMSOFT and from there I create two separate folders for KeyText and TrayDay. I copy KeyText and TrayDay to their respective folders on the USB drive.
Afterwards I launch Regedit and look under HKEY_CURRENT_USER\Software where an entry exists for MJMSoft. This is where the settings for both KeyText and TrayDay are stored. I export the program settings as a REG file and save it to the MJMSOFT folder on the USB key drive.
The final step is the one that ensures no data is left behind on the host computer. You must somehow remove the MJMSoft key from the registry, either manually or by using a script. In my case I have an AutoIt script that removes everything under the MJMSoft key.
RegDelete (“HKLM\SOFTWARE\MJMSoft”)
MsgBox (4096, “MJMSoft”, “Done!”)
Believe it or not, that first line is all you need to remove all the entries for both Keytext and TrayDay, which are saved under the MJMSoft key.
I could make my AutoIt script an executable file but 200KB is a little large for such a small script. What I did instead was make a VB Script that runs AutoIt directly and have it run my cleanup script.
Set objShell = CreateObject(“Wscript.Shell”)
objShell.Run(“I:\briefcase\AutoIt3\AutoIt3 I:\briefcase\scripts\autoit\mjmsoft.au3”), 1, TRUE
Now I’m all set. Before I run KeyText or TrayDay, I double-click on the .REG file to load the program settings in the registry. Afterwards I run the program like I usually do. When I’m done, I run the cleanup script and poof, no data left behind on the host computer.
True, it’s a little extra work but it’s a small price to pay for being able to take your favorite programs wherever you go.