Recently, after I installed something (perhaps the NOD32 antivirus program?) on my development system running Windows Server 2003, suddenly the "default beep" was gone. The default beep is the system sound you hear (usually, the "ding" sound) when, for instance, you reach the end of an e-mail and press the down arrow one too many times, when you use the volume control slider to set the volume, or, more importantly in my case, when an xterm session to a remote UNIX system receives the bell character (i.e., the remote application tries to warn you of something.)

So where did the default bell go? It wasn't exactly an unusual occurrence to see it gone, since I noticed the default bell missing on several test/beta versions of Windows Server 2003. But this time, it was bugging me, because the sound was useful: quite often, it was this sound that told me that something was wrong, e.g., when I was editing a file in an xterm window using the vi editor.

The Microsoft Knowledgebase wasn't too helpful, but it did tell me something: namely, that in the Control Panel, under Sounds, I should see the Default Bell event listed. And I didn't. So what the heck happened to it?

Actually, never mind what happened to it... the correct question is, how do I restore it?

I invoked the Registry Editor and poked around a little. It didn't take long to notice something that the default user account still had on my system, but my own account didn't: a Registry key by the name of HKEY_CURRENT_USER\AppEvents\Schemes\Apps\.Default\.Default and its subkeys. Once I knew what I was looking for, the rest was easy. As it turns out, all one needs to do is to add to the Registry (in case they're missing) the following entries:

Windows Registry Editor Version 5.00




Chances are I'll never find out who ate these entries in the first place, but at least I now know how to restore the sound. And the best part is, you don't even need to reboot; these settings take effect immediately.