Jump to page content

Bug of the moment 2007-08-29


Don’t get me wrong: I love Winamp, I’m a registered Winamp user, and I love the fact that, unlike iTunes, it has (or at least had) an active developer base of third-party plugins, giving rise to all manner of wonderful new features.

But Nullsoft’s selection of media file and playlist icons really sucks. The standard media file icon is the nicest of the bunch, but the 16×16 icon is too dull and too indistinguishable from the standard text file icon; I struggle to tell music files, tracklists and cue sheets apart. Try to select an external icon for the Winamp.File type, and Winamp will soon replace it with the one that was previously selected in its Preferences.

I brought the issue up at the Winamp forums, but no-one replied. In desperation, I had to choose the most meaningful and least hideous icon from Nullsoft’s selection for each file type. However, finally, I just solved the problem, with the help of the Registry Editor. No, not the Registry Editor, but the Registry Editor.

Don’t ask. Windows 2000 ships with two completely different tools, both called Registry Editor, and both have completely identical About boxes. One of them answers to “regedit.exe” and the other to “regedt32.exe”. regedit is the one I normally use – simple, fast and elegant. However, for more unusual and involved tasks, you have to resort to regedt32, which can mount and unmount hives and manipulate Registry security, and locks up solid for ages each time another process modifies the Registry.

What I don’t understand is why it looks like it came straight out of the stone age:

It looks like Windows 3 File Manager, before File Manager gained a couple of useful toolbars in Windows 3.11. Multiple document interface, Windows 3-era icons, and no toolbar. Yet, oddly enough, this is the advanced Registry editor. It does, however, run as its own process, and not inside NTVDM.

Even more strangely, the default icon setting for a file type in Windows is not a value, but an entire key, with a default value. An entire key dedicated to one single value. I suppose it’s like XML and the question of whether data are set as tag properties or as child tags.

The advantage of supplying the default icon as a key means that I can set permissions on just that key and nothing else:

By denying all write access to the DefaultIcon key, no-one and nothing can ever change the icon for that file type, while the rest of the file type’s settings remain freely modifiable. Two wrongs don’t make a right, but they do provide some nifty workarounds. (WTOWTDI)


Posted 29th August 2007 – Comments and questions?