Announcing the return of WssIndex

From the early 1980's to the mid 1990's, WssIndex was the premier disk cataloging program for DOS. Under Windows, it ran only as a console mode application. A GUI version has been in the pipeline longer than Duke Nukem Forever, and now it's actually being released. The Qt Toolkit by Nokia provides the graphical interface.

Licensing

WssIndex 8 is released as GPL 3.0 freeware.
(7 was the highest version number for console-mode versions of WssIndex. These versions are hopelessly obsolete and no longer supported.)

System requirements

Two 32-bit versions of WssIndex are offered, one built using the MinGW (Minimalist Gnu for Windows) C++ compiler, the other using Microsoft Visual C++ 2008 Express. They look and operate identically, but they need different DLLs. (Appropriate DLLs are included with the installers. The DLLs are installed in the same directory as the program, so both versions of WssIndex, and other Qt-based programs, can co-exist.) Performance differences are minimal. The VC++ version indexes my C drive roughly 5% faster. On the other hand, either version speeds up by a factor of more than two if the disk is indexed a second time, presumably because the operating system has cached directory information.

A version for 64-bit Windows, built with Visual C++ 2010, is also available. The 64-bit version is not subject to the 2 GB process space limit imposed by 32-bit Windows so larger databases are be possible. You'll need 4 or more GB of physical memory to take advantage of the increased capacity.

Discussion Forums

Screen shots

Changelog

Downloads

Note: Norton Antivirus dowload insight doesn't like files it has never seen before. Download of beta 1 was blocked until their whitelisting process was completed; now you just get a warning that the file is unknown. Future releases will probably be treated the same way. If you're worried, you can submit the download URLs to VirusTotal which will download the installer and scan it with 43 different scanners.

Support for non-Windows operating systems

One reason for choosing Qt for WssIndex was its support for multiple platforms. Early on, the Qt-based version of WssIndex was only a viewer without Unicode support. At this stage, I copied the source to a Fedora 12 Linux system. After a few trivial code changes, it compiled and worked. But, there are some serious obstacles to ports to other systems:

Support for non-English languages

Qt is designed to make it easy to translate the user interface into other languages. Text strings are marked in a way which allows them to be extracted for a (human) translator. A table of translated text is applied at run time. One executable supports multiple languages through different tables. Widgets that make up the user interface resize themselves to make text fit, so if a translated string has a different number of characters than the original, adjustments are mostly automatic. WssIndex follows the standards necessary to allow translation, but no translations currently exist.

Why a GPL release was previously impossible

Here's how you get into a situation where you can't release your source code even if you want to: Compilers typically include source code for library routines. You find a library routine that almost does what you want, but maybe it's buggy or maybe it needs a small change to meet your needs. So you modify the source code and use it. As time goes on, you change compilers multiple times, and the original vendor goes out of business. Now your project depends on code that you're only licensed to distribute as part of a binary. WssIndex for DOS had several such routines; all have been replaced or are no longer needed in WssIndex.

Documentation

If I had time to write good documentation, I'd do something else. [Anon]
WssIndex for DOS had a long manual, which is largely obsolete, in WordPerfect format which is certainly not as popular as it once was. Here are a few important notes:

Why did the console-mode version die?

What features have not been ported from the DOS version?

Acknowledgments for tools used to create WssIndex

Contact info