Entries Tagged as '► Downloads'

USB Sync Utility

Well, not so much a utility as it is a batch file.  But what I’ve tried to do here is write a batch file that will locate a USB drive in the system and backup files to it.

You will need “robocopy” from the Windows Resource Kit (most any version will do nicely); I’ve though about converting it to rsync (Cygwin), but I’ve found that rsync isn’t really that much faster than robocopy for binary files (and mostly I use this to sync media files).

Here’s what you will need to change:

LABEL, that’s the volume label for the USB drive you want to back up to; hopefully you use unique labels for all your USB thumb drives, external USB hard drives, etc — if not, this batch file won’t have much value

TARGET, that’s the sub-directory where you want the backup to be on the external drive (it should be relative to the root of the drive, but shouldn’t start with a back slash or drive designation.

the “sync.bat” file should go in the root of the directory that is to be backed up (that’s how it locates the source) and you just double click it in the Windows Explorer to launch it .


@echo off
rem sync files to backup
set TARGET=Target
set USB=

for /f %%D in (‘wmic volume get DriveLetter^, Label ^| find “%LABEL%”‘) do set USB=%%D

if "" == "%USB%" (
  echo "Volume `%LABEL%` not found"
) else (
  echo "Backup `%CD%` to `%USB%\%TARGET%`"
  robocopy /MIR %CD%\ %USB%\%TARGET%



Download sync.bat (as a 7z file)

Download sync.bat (as a ZIP file)

RAPTOR Example Plugin

RAPTOR is a flowchart interpreter originally designed at the Air Force Academy, the runtime library that comes with RAPTOR is fairly week, and if you’re serious about using it to teach computer programming concepts, or using it for any type of proof of concept, you’ll definitely want to consider enhancing it.

Attached is a Microsoft Visual Studio 2010 (you can use the free Express version — but don’t try to use any Visual Studio newer than 2010)

Here is a list of the example functions implemented (using C#) 


  • Parse_String
  • Parse_String_Count


  • String_Trim
  • String_Trim_Start
  • String_Trim_End


  • String_Lowercase
  • String_Upppercase


  • String_Format_Int
  • String_Format_Double
  • String_Format_Date
  • String_Format_DateTime


  • Array_Int_Sort
  • Array_Double_Sort


  • Random_Int
  • Random_Double


  • Is_Int
  • Is_Double
  • Parse_Int
  • Parse_Double


To test or use this plugin, just place the DLL into the RAPTOR directory and re-start RAPTOR.  There is also a sample RAPTOR program included along with the full source code.

This source code, and the accompanying DLL may not be used in any commercial endeavor, it may; however, be freely used for educational purposes.



Download raptor_example_plugin.7z

RAPTOR Loop Logic

RAPTOR is a flowchart interpreter, or flowchart-based programming environment by Terry Wilson, Martin C Carlisle, Jeff Humphries, and Jason Moore from the United States Air Force Academy (used there, the United States Military Academy, and a number of other educational institutions to teach an introductory course to computer programming concepts).

How good or bad the system is I’ll leave to you to decide.  One thing that annoys me (greatly) about the program is the loop logic construct — it’s backwards from any computer language I’ve ever seen, and while Dr Carlisle feels that it’s implemented in a fashion that makes it easiest for non-computer people to understand… many disagree.

The attached registry files will allow you to flip the logic (or flip it back to default). 

RAPTOR Flowchart Interpreter




Download raptor-loop-logic registry files (as a 7z file)

Download raptor-loop-logic registry files (as a Zip file)

Google Mail IAF Creator

One of the big problems of using Outlook Express, Windows Mail, or Windows Live mail with Google Mail (or Google hosted Mail) is that the IMAP folder presentation for special folders isn’t what you probably want (or are accustom to).

It’s a straight forward fix to just save an IAF for the account and edit to correct the presentation of the special folders, but that might be a challenge for some, it’s error prone, and generally a pain in the butt.

Since I’ve been encouraging a fair number of clients, associates, and friends to consider using Google Mail or Google Hosted Email I decided to write a tool to create IAF files that were “correct”.

What I’ve implemented is a fairly simple PHP script that will take in your name (that’s what you want displayed), your [complete] email address, and your password — and I’ll prepare an IAF file that you can download, save, and then import into your Microsoft Windows mail reader (you should delete any identical account you might already have — and to be completely safe, export it to an IAF file so that you have it for recovery if necessary).

While you have no reason to trust me on this… I don’t keep your email address or your password (in fact they are deleted as soon as possible) — I’m not interested in SPAMming you or selling off your email — and I certainly could care less about most of the email I get… much less the email others get.

If you want the source code, I don’t have any issue with that — and I’ll consider posting an archive of the files (I use a library that’s freely available to do the IAF, it’s really just a PHP wrapper and an AJAX web page around that… but then again, it’s all one’s and zero’s if you want to get really technical.

IAF Creator

WinAMP PLS Play List Files In Windows Media Player

I’ve been listing to “Internet radio” some on my computer while I work; but the only utility I had loaded on my computer that handled .pls files was Nero Showtime… and I preferred to have Windows Media Player handle it.

So I created a little Windows program in C# (it would be trivial to do in any language, but that’s my preference at the moment) and associated it with .pls files that does nothing but take file1 out of the play list and url-ize it in a format that Windows Media Player likes and pass it on to Windows Media Player.

Give it a try!

Installer: WinAMP Play List for Windows Media Player Installer

Playlists: http://www.di.fm/

You can save the MP3 play list to your computer and you need not visit the web site again.

Corel PaintShop Pro Malware

When you install Corel PaintShop Pro X2 (version 12) you get an extra service that you’re not told about — ProtexisLicensing.

It’s alleged to be spyware that monitors your system and reports back to the software vendor.

Removing it is simple:

  1. Use the service manager GUI to stop it and set it to disabled (that’s probably enough, but not for me).
  2. Open a command prompt (with elevated priviledges on Vista, Win7, or Server2008) and type “sc delete protexislicensing”
  3. Now delete the file “C:\Windows\SysWOW64\PSIService.exe”

For your convenience I’ve included the command to do all these tasts below; simply put them into a batch file and run it (withe elevated priviledges) or copy paste execute each line in a command window.

Odd that I haven’t seen federal charges against Corel for cyber terrorism — they certainly didn’t have my permission to install any type of monitoring software on my machine (and that’s probably true of all their paying customers).

I certainly don’t feel that companies that take actions like this are on any higher moral or legal ground than software pirates — while perhaps not as devious as the root kits many software suppliers installed, it is every bit as invasive.

Join me in boycotting Corel (and any other company that violates the trust of it’s customers)… as a former first lady once said:

Just Say NO!

– Nancy Reagan



sc stop protexislicensing
sc config protexislicensing start= disabled
sc delete protexislicensing
del “%windir%\SysWOW64\PSIService.exe”

You can also download a “fancy” batch file to do the job from my server as a batch file in a 7zip archive disable_corel_spyware.


I’ve been using NX technology to remotely connect to my Linux boxes for some time now, and I find it to be a great solution for remote desktop (very similar in many ways to Microsoft’s RDP — but based on a differential X compression system more closely aligned with *nix’s roots).

Like with so many Open Source projects there are multiple versions you need to consider.

Google produced a version called neatx, but it really doesn’t seem to be an active project; nor does it have the features (or stability) of FreeNX.

Nomachine.com produces a commercial and community edition they refer to as nx.  The main problem with using their product on a server is that it’s limited to the number of users — and I mean users, not active connections.  But it’s likely that you’ll download their free client for Windows, OS-X, Solaris, or even Linux.

An issue with setting up FreeNX on Ubuntu is that it’s not part of the distribution (or in the distribution repositories) so you’ll need to add the FreeNX Team PPA (I won’t go into details, if you look at the “FreeNX (on Ubuntu)” link below you can view the community documentation, which is well written and makes the task of installing FreeNX very straight forward.

With both FreeNX and nextx, occasionally the very first session to the server (after a reboot) will not establish; but launching it a second time works fine.

With neatx, after a reboot the Linux server leaves the session files (that’s not as egregious as you might think, since those sessions files allow a disconnected client to resume a session — had the machine not been restarted).  What this causes is an error in trying to establish the “same” client connection again; so you have to clear out the old session files.  I found that just adding a few lines to the rc.local file was a better solution (that way I never forgot; and yes there is a caveat — but I’m willing to deal with the possibility of deleting session files that might be resume-able).

# rc.local

# clear out any lingering nx (neatx) sessions
if [ -d /var/lib/neatx/sessions ]; then
rm -rf /var/lib/neatx/sessions/*

So I’ve told you all about installing it, and some of the pitfalls — but I haven’t really said much about it other than to wave my hands and liken it to Microsoft RDP.

Well, consider sitting at a Windows machine (or Mac, Solaris, Linux) and launching a program that puts your Linux desktop on your machine in a window — allowing you to interact with the Linux machine just like you were sitting in front of the monitor attached to it (if it had a monitor).

And just like logging in locally, you can use any display manager (gdm, kdm, xdm, etc) that you’ve got installed and configured to run — in fact, you can launch multiple sessions each with different display managers simultaneously.

Yeah, lots of people don’t install any of the graphics on a server — but I find that there really isn’t much resource hit on installing (or using) a graphical UI on a server; and I’m willing to do that to have the ability to use a GUI when I want to (you can certainly still ssh into the box; in fact, FreeNX will require that you setup ssh — which is easiest to do with tasksel; of course in 10.10 you’ll have to install that using apt-get).

Anyway, whether it’s for you or not will depend on how you use your Linux machine; for the moment I haven’t abandoned my Windows desktop (my scanner will not work under Linux); so I have the option of starting up my desktop with Ubuntu (you can use wubi for that if you want to make it virtually painless, and it makes it easy to change your mind later on); starting a virtual machine (using VirtualBox of course) running Ubuntu; or remoting into my server running Ubuntu using NX/FreeNX.


FreeNX (on Ubuntu)

NX Technology (on Wikipedia)

Desktop Backgrounds

I use a lot of virtual machines, and I often RDP to my servers to manage them; sometimes I’ll have several windows open at once and it becomes fairly easy to get a little confused as to what window is associated with which machine.

Long long ago (in a galaxy far far away) I started making desktop background images that contained the machine name and installing them on each machine.  That was a fair amount of work, and require configuration on each and every machine.

Then I found BgInfo (from SysInternals, now Microsoft), and that was a great solution — but it did still require a moderate amount of configuration on every machine…

So, I created an “installer” for BgInfo that puts all the files in the right places, and creates the startup link so as to almost completely automate the configuration (OK – you have to run a single command on each machine; but if you map to a share or put this on a thumb drive it’s really simple).

BgInfo (my installer; includes an older version of BgInfo)

BgInfo on Microsoft

Automating Clean Manager in Windows

Using clean manager on older versions of Windows (in particular) always requires setting the options, which isn’t hard, but makes it a little hard to automate as part of a larger process of cleaning up your drive.

I made my life a little easier to run clean manager by writing a batch file (and registry file) that you can downloads (in a 7z archive) via cleanup_disk.7z

Null SMTP Server

For some time now I’ve wanted an efficient way to be able to send myself rich email without having to waste a lot of bandwidth; so I wrote what I call a “null” SMTP server.

It’s a dotNET application (written in C#) that sits in the System Tray and “talks” SMTP.

You point your mail client’s outbound SMTP to localhost (, it say “OK” to just about everything, and throws away the message (well — internally I have a logging method, but right now I don’t expose that)… doesn’t sound really useful does it?

How do I use it?

Easy; I setup an IMAP account that uses this as the send path, and the IMAP server as the receive path — Windows Mail (or Live Mail) will send the message (which throws it away basically) and then upload a copy to my “sent” folder.  I cut down on my bandwidth (and time) and still get a copy of the email I wanted.  In case you’re wondering, I use email to “record” lots of information (contents of web pages; to do list items; etc — since my IMAP server stores the messages in a format that Windows Desktop Search can index it makes it a snap for me to manage large amounts of information — and it by it’s very nature is shared… yes I could use OneNote, but previous to 2007 it’s clunky and it doesn’t share the information without a SharePoint server — and I already have an IMAP server, and already archive some of my email).

Here’s a link to the installer for it; I haven’t heavily tested either the installer or the applet — but I’m using it.

Null SMTP Server Installer

Remember to set your outbound SMTP connection to localhost (; you don’t want authentication or SSL / TLS (I don’t support them — and won’t).