Nov 29 2005
For a project that I’m working on we’ve recently switched from using the .Net Framework 1.1 to using the .Net Framework 2.0. Whilst .Net 2.0 does have some nice features (Generics, System.Management, XHTML compilance in ASP.Net, refactoring tools in VS2005) there are also some problems with it.
One of the problems we have had is that, for no apparent reason, our IIS server will create a memory dump. So far there doesn’t seem to be any correlation between user activity and the dump files being created. Due to the fact that the dump files and event messages generated by IIS are less than helpfull – thats putting it mildly – I resorted to Microsofts latest debug tools, DebugDiag, to help me sort out what the problem could be.
The only trouble is that I don’t have all day to sit around waiting for DebugDiag to create its more informative memory diagnostic dumps, I’ve got work to be getting on with. What I needed is a piece of software that would inform me when file in the DebugDiag output folder is created. The .Net framework provides a component that can do just such a task called the FileSystemWatcher… unfortunately it doesn’t have an interface. So, as any programmer would to when faced with a task, I went ahead a created a neat little software tool that sits in my system tray and alerts me when files in the DebugDiag folder are created.
However, I didn’t stop there. Why should I create a tool with such a narrow market. Surely if I want to watch one folder for new files, at some point I’ll need to watch other folders, maybe I’ll need to watch for other events such as changed and deleted files. Enter File System Alerts. In this tool users can create any number of watches with varying settings. Users can be notified by a system tray alert, the alert window being brought to the foreground and a log file being created.