Originally posted by Ernest Friedman-Hill:
The thing you want to use is called "JAWT". Here's a handy article, the one I originally learned about this stuff from.
Awesome! Thanks, that looks like it and the great thing is it appears to be "cross-platform" of a solution too (obviously I'd be writing windows-specific code in the c++ but you can also do it for solaris, etc too using almost the same code from jawt).