This page contains the free windows (95/98/ME/NT/2000/XP) programs that I have written. As an example you can download a free html (or rexx) preprocessor called PPWIZARD. I have just converted to Windows 2000, so you can expect to see much more windows code to appear on this page.
This software has all been written by Dennis Bareis. Please read the disclaimer before downloading or using any software from these pages. You should also check out my recommended software page for other very useful code.
Once you have evaluated what you have downloaded I would appreciate feedback, this will hopefully be good but I'll take the bad as well. This will encourage me (hopefully) to continue. Maintaining these pages takes significant effort and if it appears that nobody benefits from it then I'll stop...
Note that you should be able to run many of my free DOS tools under windows.
The top entries in these tables are the latest to be added or updated. This makes it easier for you to recognise changes when you next log on.
A lot of the tools in this section requires my
free regina and tools for windows download, these
will be marked with
Note that rexx makes an excellent batch or scripting language for windows. Not only can it run on all versions of windows but can run on other operating systems as well. It is of course a reasonably powerful programming language as well (similar in power to perl) but it is it extremely easy to use (unlike perl!).
Some of the following files are self installing EXE files. If the installer tells you about a CRC error you either have a virus or have had a download failure (the correct file size is displayed for each download).
|I have heaps of interesting and useful rexx source code routines.|
Fri Oct 13 2017
AUTOMATICALLY This is the
This is the
This free program is used to automate the building or updating of any windows installer databases (usually .MSI files). This program can also largely replace most peoples use of the ORCA utility.
This tool makes use of the PPWIZARD processor and therefore allows for complex build time importing and dynamic generation of windows installers.
You may also want to look at my "MSIDIFF" tool which can dump or compare windows installer databases (result is actually understandable).
Mon Jul 25 2011
This command line tool (start this vbscript via "cscript.exe") allows you to extract photos from a VCARD file containing any number of contacts. It tries to name the pictures with the contacts full name (FN tag), if that fails it will get it a generic name.
It will extract the photos into a "$ExtractedPictures$" subdirectory off the "current directory". If it already finds a picture with the same name it will rename the previous photo with the date of that file so that a history of contact photos revisions will be kept.
Note that Google itself doesn't export photos but your Android phone's people/contact app does export pictures when creating vcf files.
This phone handles PHOTOS that begin with "PHOTO;ENCODING=BASE64;JPEG:" or "PHOTO;ENCODING=BASE64;PNG:", if there are other formats in your vcard files send me an example of a contact, create a dummy one if you wish and I'll look at updating my app to handle it.
OPTUS USAGE meter
Thu Jun 23 2011
This product is no longer supported, you can still download it if you wish to try it. If it fails and you know how to tweek things then it won't be too hard to do. If you have an Android phone then I recommend you download "myUsage". If you have an iPhone, sorry to hear that :-), then I think that its also available there given the Android app looks like an apple one.
OptusUsage is an "offline" meter tool which periodically logs on to Optus (you specify how often) to monitor your bandwidth with the results being displayed on your desktop's background (click for example along with its configuration).
On my multiple monitor setup I have it placed on the bottom right of the left hand monitor. You can alter the text size, font and color as well as add other information you may be interested in monitoring. The data displayed includes peak and off peak used and left amounts and percentages.
It can optionally speak the main details to you as well so you know when the information has been refreshed. The installer creates a schedule (and shortcuts) for you to update as often as you wish.
I used to use UsageAgent (UA) while on BigPond, unfortunately it doesn't work correctly on Optus (Australia) and as the many so called alternatives (and UA "fixes") didn't work well either, I decided to write something that works for me.
Some current limitations:
If upgrading from a previous version there is no need to uninstall the old version first.
Wed Aug 20 2008
This free program is used to disassemble or compare MSI installers or other Windows Installer databases.
Sun Feb 28 2016
This preprocessor can be used to generate HTML (and rexx or other) code from source files. It supports commands such as "#include", "#define", "#if" and much more.
I maintain two differing homepages (this is one of them) from the same source, all the html you are seeing has been processed/generated by this program. Note that the '#if' processing is very powerful and that you can execute any rexx commands and use the output (all the file sizes and dates where provided were automatically calculated by this program). The #define command supports parameters and conditional generation of code.
As a rexx preprocessor it allows you to easily create header files of standard routines so that you never need to duplicate source code again! I have made some source routines available for #include in your programs. Rexx code is packed by default so that your input can contain many comments and be spaced out with most of this being removed from your runtime.
Note that this program can be used for virtually any file type and not just html & rexx. Some people use PPWIZARD macros to develop AWE def files and someone uses it with PHP.
Tue Nov 1 2005
This free program is used to validate URLS, it will report all links such as those that would generate a page not found (404) as well as pages that have moved.
Note that I also use it (via a PPWIZARD add-on) to indicate when a link was last checked and whether it was OK or not (in my link pages).
Thu Nov 6 2003
Extracts file version information out of EXE, DLL and other executable files:
SYNTAX ~~~~~~ StrFInfo[.EXE] ExeDllOcxFileName [Property1 [Property2 ...]] COMMON PROPERTIES ~~~~~~~~~~~~~~~~~ FileDescription FileVersion InternalName OriginalFileName ProductName ProductVersion CompanyName LegalCopyRight Properties are generated to stdout in the order supplied, one per line. A value of "FAILED" means a propery did not exist. A scripting language such as REXX, PERL or VBSCRIPT would normally be used to parse the generated (redirected) output. A return code of 0 or 1 means that some properties exist. A return code of 1 means that NONE of those you requested exist. A return code of 2 means that the file does not exist. Any other return codes probably mean that STRINGFILEINFO is unavailable, not all executables will have the information.
Mon Jun 9 2003
This is a simple toddler game
(see screen print).
It can be used as a simple childs "keyboard banger" as any
key press changes the background color (as do any mouse clicks clicks).
A mouse trail follows the mouse to make it easier to see where the
There are two versions (both require Internet Explorer - for now) a
straight HTML based game and a more powerful HTA (Windows html application)
The download is quite large because there is a lot of graphics and sound (the code itself is only about 30K of this!). I think variety helps to keep children interested. No two screens (or program runs) will ever be the same.
The HTA version covers the whole screen and has no browser controls to maximise safety (of your computer!). It also ensures that the mouse does not go off the screen (a common fault with most kids games).
This game has a theme of animals (the download also shows you how you can create your own variations - for example shapes). Graphics (quite a few being animated) are randomly selected and placed in random positions, every minute the screen is redrawn. The number of graphics displayed depends on screen size and the size of the graphics already selected. When the mouse is moved over a graphic the appropriate sound is produced and a "tooltip" description is displayed.
Sat Mar 1 2003
This tool is very useful in make files and can
also be of use in batch files.
Its task is to capture the output (stdout and stderr) of a
command to a file while also displaying the output.
You can specify on the command line how it should process the input in determining what the programs return code will be.
Wed Aug 13 2008
|This program (VB Script) filters lines of text from stdin (piped or redirected). It is basically a smarter "find" command. You can specify as many rules for inclusion (+) or exclusion (-) as you wish. The rules can be specified on the command line and/or in one or more files. Regular expressions or simple text matches are supported.|
Mon Dec 17 2001
This is simple program which displays all web graphics in a
subdirectory (much more useful than explorer's thumbnail view).
The user chooses the option from the context (right click) menu of any directory and your chosen browser will display all web graphics files sorted in name order and full size. The images size, height and width are also displayed.
Should work in Windows 95/98/ME/NT/2000/XP.
Thu Dec 13 2001
is a very useful tool for WebMasters as it allows you to
maintain a site image on your local computer and let the program
It remembers what needs to be done to your site to make it match
the local copy (which files to add, update or delete).
There are some commands which allow you to do some fancy file
manipulation but it is better/easier if the local image exactly
matches your web site.
As the Windows (cygwin) port as supplied on the "official" site is extremely difficult to set up (my opinion) and SITECOPY is such a useful tool I have packaged it up so anyone can be using it in a matter of minutes (the download is a setup program and once site/ftp information has been entered you can start using it).
Has been tested on Windows 95, 98, ME, NT and 2000. For Windows 95, 98 and ME you must install into the C:\SC directory due to operating system as well as sitecopy restrictions. An session should already be established before running.
Wed Apr 25 2001
|This is a do heaps filter program. Amongst other things it does case conversion, hex dumps (ASCII, EBCDIC or Custom) and binary to text representation and back.|
Fri Sep 15 2000
This is a simple command line based Text-to-Speech (TTS) program
which takes text from the command prompt or batch file and speaks it
The program uses SAPI 4, WINXP installs SAPI 5, now thanks to the amazing intelligence of the MS blokes SAPI 5 can't handle code written with an previous versions) and so out of the box this program won't work with XP. You will need to install SAPI 4 (you can have both installed at ones), download and install in order:
Sat Aug 19 2000
If you are like me you are not happy that windows does not
support ANSI color codes on the command line.
This utility allows you to display text in different colors in console batch files etc. In fact it goes one better than ANSI codes, if the output is redirected then the output will not contain color codes (which tend to make the output harder to read)!
No device drivers ("ANSI.SYS" etc) are required.
In Windows 95, 98 and ME you can change the color of the text on the CTEXT.EXE command line but it may or may not stick for longer (ie its flakey). In Windows NT, 2000 and XP it will also set the color until it is changed again.
Wed Aug 9 2000
This program will hopefully help you to choose fonts for use in your
web pages by allowing you to view all your installed Windows fonts in
the browser using sample text that you can create/modify.
You can choose to display each font in a number of sizes.
Tested on Windows 2000, should work on 95/98/ME as well.
Wed Aug 2 2000
|This program scans binary files and finds strings. You have a lot of control as to what is defined as a string. For example you can decide that strings don't contain digits 0-9 etc.|
Tue Aug 1 2000
This is a filter program which works as a "tail" or "head"
It displays 'x' number of lines of the start or end of output.
This program has a number of options, including a search capability.
5 May 99
|This rexx program is an automated text editor. It allows you to easily modify files such as "CONFIG.SYS". It has not been specifically written for "CONFIG.SYS" but does have some specialized commands to make editing this file easier. It is very powerful and can make decisions based on return codes, environment variables etc.|
22 Aug 98
| This rexx utility accepts user input and generates one or more output files from a template. You specify (without coding) what questions will be asked and what validations should occur. Some basic validations are built in and rexx code can be called for more complex requirements. |
An example is included in the documentation which shows how a CM/2 response file is tailored after a few simple questions have been answered.
There are some limitations under regina. These are not major.
Some of the packages contain very detailed documentation while others don't contain any. For almost all of my programs if you make a command line error a summary of the correct syntax is produced. If I have placed a package here without documentation then I have done so because I believe there is enough information available (and because I have too many other things to do!).
I would appreciate some feed back on how you use or find my programs. I am also interested in fixing any bugs you might find or hearing about any enhancements that would make your task easier.
As long as you are not making money by reselling or including my software as a selling feature then I don't care who uses this software or whether it's for individual use or used by a large corporation. If however you will make money from my work then we need to talk! If you make use of my product within your own please point people to my homepage so they can update the code.
Friday October 13 2017 at 2:15pm