Windows Development


Yeah, I do Windows development from time to time and I'll be the first to admit that Microsoft's Visual Studio is a very well designed and well thought out IDE. All development I do in Windows is C/C++ though. I try to avoid VB like the plague. Anyway, below are all of the projects I have worked on that are exclusive to Microsoft Windows. If you notice any problems with any of the programs, be it compatibility issues, bugs, lack of a certain feature, etc. then let me know and I'll see what I can do.

Find Text
Find Text is a utility I wrote back in 1999 that searches through text files from strings that you specify. Here's a capture of Find Text in action:


As you can see from the above screenshot, Find Text has a fairly easy-to-use interface. For the curious,here is a list of some of Find Text's more important features:

If you're interested in the source code then here are some design features I used to create the application:

Finally, here's the downloads available for Find Text:


Killie: Internet Explorer Process Killer
I know the person who came up with the idea was perfectly in their rights to do so, and they probably thought they had a great money-making idea on their hands, but the person who came up with the idea of spyware should be slapped hard. There came a point in time last year that it seemed like every piece of trialware I downloaded included some type of spyware that would cause IE popups to appear right when you least expect them. Being a programmer, I was not defenseless though so I developed this Kill IE service, or "Killie" for short.

Killie is pretty simple, it runs in the background waiting for iexplore.exe processes to poke their noses in your busy then BAM!, it terminates them like the rotten vermin they are.

Okay, so Killie's far from a perfect solution but since I use Mozilla instead of Internet Explorer it works pretty good. The downfall is that whatever program you were using before hand still loses focus, but at least you don't have to stare at that X10 ad for the few seconds it would normally take you to close the popup manually. Ahh, so if you're reading this you may be interested in installing this program. The downloads are down at the bottom. Download it but keep reading! I've got special info for installing Killie since it runs as an NT Service.

I wrote and developed Killie in Windows 2000. I'm not sure if it will run in any other Microsoft Windows operating system. I know that it will not run in any non-NT version of Windows which includes Windows 95/98/ME. If you try Killie out and find that it works in Windows NT 4.0 or Windows XP then please let me know! Detailed instructions for installing Killie are in the Readme.txt included with the download but I'll give you a heads up: you need my Service Utility software to install it. :)


Process Hunter Daemon (phunterd)
phunterd is the direction I went after I wrote Killie. It's more customizable and does more things "the Microsoft way." For example, logging is done through the Windows Event Viewer and the config file is a Windows INI file. It's also self-installing, which is a major benefit over Killie. Another big feature is that it doesn't just look for Internet Explorer processes. You provide phunterd with a list of processes to look for and kill in a config file. There are a couple of other configuration options too, just check out the example phunterd.ini file included with whichever package you decide to download.

Command Line Options:

Usage : phunterd [option]


Downloads:

Service Utility Library
This utility is a library that allows basic access to Windows NT's Service Control Manager. With this library you can determine whether a service is installed or running, add or remove a service, or start and stop a service. I actually have two concurrent versions of this library. One is a standard DLL that you can link into at compile-time using the corresponding .lib file or load dynamically at runtime. The second version is a port of the first version to COM. Once you register the COM library with Windows using regsvr32 you can call the library very easily from VB or any other COM-aware language. I've named the COM library and its project 'svcctrl' and given the other, non-COM library the name 'srvcutil'. Details about how to use the libraries are included with their corresponding Zip file. The 'srvcutil' project also includes a sample application (and source if you downloaded the source package) that demonstrates how to access the various functions of the library.