Willem's Downloads Page

Welcome to my downloads page. On this page, you will find some programs I have written in Visual Basic 6.0 (which means that they will run on 32 bit versions of MS-Windows only). These programs are small utilities and are all freeware. So don't go and sell them, OK?
The downloads are zip files that contain both the source and the executable (packed with the Ultimate Packer for Executables). There is no installer and I think you do not need one either, as long as you have MSVBVM60.DLL somewhere in your system's searchpath. Just copy and run the executable.

Unit tests

In the projects, you will see classes that start with "ClsTest_", followed by the name of another class. There are the unit tests. Unit tests are automated tests that can be run as often as you like. They test a "unit" of the software: an independent piece of code. Unit tests help the programmer to make pieces of software independent (and therefore reusable) and indicate if changes to the tested piece of software did not introduce new bugs. Unit tests also are a form of documentation: They provide the examples of how you should use the tested piece of code and tell what the code can and cannot. You can run the unit tests by typing runUnitTests in the debug window.
As the unit tests are not optimized out of the project by the VB compiler, there are two project files in the zip file: one normal project and one without the tests. Use the version without the tests to build the production code, for it produces a smaller executable.

The programs

Screenshot of DIROPT


Diropt is a very small utility that should have been a part of the windows explorer. It changes the attributes of a directory and all its files and subdirecories (and their files and subdirectories, etc.).
If you make a shortcut onto your desktop to this program, you can drop the directory from windows' explorer onto that shortcut. Otherwise, you will see a selector window when you start DIROPT.
A little undocumented feature: The status line is a textbox, so you can copy a deeply nested file onto the DIROPT shortcut and copy its full path as text.
diropt.zip (30K)
Screenshot of JAVA2VB


JAVA2VB is a utility that is meant to work with either ArgoUML or Poseidon. It translates (empty) Java methods and properties into Visual Basic or VBA code. To make this application as compatible with all Visual Basic versions as possible, no files are written. Instead, the translation can be copied onto the clipboard for pasting in a VBA editor, an ASP file or Visual Basic itself. If you use it to make ASP code, you will have to remove all variable types yourself.
Usage of this program is fairly simple:
  • Generate a Java source file from ArgoUML or Poseidon and drop it from the explorer onto a shortcut to JAVA2VB (or just start JAVA2VB and open it).
  • Edit the translation if you like. If you work with an early version of Poseidon, you will probably want to remove the automatically generated getters and setters.
  • Press the Copy button and paste the translation into your VB or VBA editor.
Like the Oh No! Analyzer, it comes with the language packs nederlands and haags. To use a language pack, just copy the ini file and the help file to the directory of the executable.
Version 1.11 is also tested with and adapted for ArgoUML V0.10 and Poseidon Community Edition 1.6. It contains some new features, such as property routine translation and constructor recognition. Tested on Windows '98 and Windows XP.
java2vb.zip (105K)
Screenshot of Oh No! Analyzer

Oh No! Analyzer V1.02

The Oh No! Analyzer is a software metrics tool that shows the size and complexity of the procedures in a Visual Basic project. You may use the Oh No! Analyzer to look for methods to refactor into smaller ones, or to get an impression where the most important actions occur (in legacy code, these are usually the largest and most complicated procedures).
Oh No! Analyzer works with Visual Basic 5.0 and Visual Basic 6.0 files, but not with Visual Basic dot net projects, because they are completely incompatible with any previous Visual Basic version.
If you make a shortcut to the Oh No! Analyzer on your desktop, you can drop a project file directly onto that shortcut.
The Oh No! Analyzer comes with two language packs: nederlands and haags. You may create additional language packs by providing an OHNO.INI file and a helpfile yourself. To use a language pack, just copy the ini file and the help file to the directory of the executable.
Version 1.02 fixes an optimization bug. If you receive an error message 'Id <some number> not found.', please upgrade.
ohno.zip (143K)
Screenshot of SourceSafe Reporter

SourceSafe Reporter V1.00

The SourceSafe Reporter generates reports for things I am very interested in, but which are not reported by SourceSafe itself. Currently, it can generate two reports:
  • A report with all deleted objects, so you can purge them when cleaning up a database
  • A report which shows which modules are actually shared between two projects. SourceSafe itself does not tell the difference between "coincidentally" equal modules and shared ones. However, you'll probably want to share modules that are coincidentally the same.
To compile this project, you need the designer reports that are built in into Visual Basic 6, ADO and, off course, SourceSafe. This also means that you will probably have to make an installer if you want to distribute it. For programmers who have both Visual Basic 6 and SourceSafe installed on their machine, it should work.
ssrep.zip (?K)
Screenshot of stereo cutter

Stereo cutter V1.00

The stereo cutter is a utility to determine the edges for scanned stereo images. Cutting stereo images is special, because the two borders together form the "virtual window" through which the stereo image is seen. The virtual window has a depth itself with respect to the 3D image. The stereo cutter can be used to place the virtual window on or behind a point that is seen in the two images. For example, look at this stereo picture. In this picture the corner of the table was put on the virtual window.
As soon as all the fields are given, the results are calculated as you type.
stereox.zip (25K)


Written for unit testing, because the original VBUnit frameworks refused to install. Now a replacament for the regular unit testing frameworks, as they have grown way out of hand. TinyUnit is "the simplest unit testing framework that could possibly work".
see the TinyUnit page.