Beep Bleep

Warning: This is a rant.

After several variant internet searches spread over several weeks, I finally found an answer about how to turn off the "beep" noises in Windows 2K & XP. 

My searching was inspired by several users of my dialer.pl program, also users of Windows XP, requesting that I turn off the beeps in my dialer.pl program.  My dialer.pl program beeps 3 times to exclaim that it has successfully established a connection.   In Windows 9x, it was easily possible to either "mute all sounds", from the volume control, or to use the volume control panel to mute the sound on the internal speaker.  While in Windows 9x the internal speaker seems to have been integrated into the sound volume control panel, this seems not to be the case in Windows NT, 2K & XP.

As a temporary solution, I placed a modified version of the program on my web site which didn't implement beeping, I have now found a way to turn the beeping on and off, via Windows NT, 2K & XP.

The Windows command line command "net stop beep" will turn off the beeping, and "net start beep" will turn on the beeping.

It would be possible to right click the Desktop, select New / Shortcut, and put the "net start beep" command in a shortcut/icon.  And similarly for the "net stop beep" command.  This would give a more convenient way of turning the beeps on and off.

For technical completeness, I should mention that "net start" and "net stop" turn on and off any of the services named in the Windows Control Panel / Administrative Tools / Services ... or any of those listed by the "net help services" command line command.  Unfortunately, the "beep" service is not listed in either of those lists, so it has been a bit hard for me to find it, knowing neither that it existed nor expecting sound volume controls to be in any place other than the Control Panel's "Sounds and Multimedia Properties" applet!

Once I finally stumbled across the solution, and could do a different query with better keywords, I then found the following instructions, which is the GUI way of doing the same thing. 

Perform the following steps to disable your machine's system beep:
  1. Right-click My Computer and select Manage.
  2. Expand System Tools and select Device Manager.
  3. From the View menu, select Show hidden devices.
  4. Expand Non-Plug and Play Drivers.
  5. Right-click Beep, and select Properties.
  6. Select the Drivers tab.
  7. Click Stop. You can also change the start-up type to Disabled so the beep service never starts.
(Above instructions found at http://www.winnetmag.com/Article/ArticleID/15508/15508.html)

Note that the 7 instructions (and the implicit, close the dialogs; and the technique above actually requests an unnecessary reboot of your computer also) involve at least 12 mouse movements and 12 mouse clicks, for 24 total action steps, plus the delay time required to reboot, and the interruption of all the other programs that might be currently running at the time of the reboot.

Clearly, GUIs are always easier to use, so it is clear that the 24-click sequence described here is easier to perform that the 14 or 15 keystroke command mentioned above.  And clearly, by using the GUI method, you can find all the available options by "mousing around" without having to remember the command to type.  So why didn't I find it earlier?

Clearly Billy thought that audible beeps were a feature that no one would want to turn off, so he intentionally made it hard to find.  Or else, clearly Billy thought computers would be easier to use if the options to turn audible beeps on and off were hidden from novice users, and even most expert users, so that consultants could earn large fees for simple operations that should be simpler. Or else, clearly it is obvious that having two mechanisms for controlling sound output from the computer is a large step forward over the unified sound volume control that was available in Windows 9x.  Is all this perfectly clear?

The next version of dialer will have its beeps as an easily turned on/off option.

I've updated my web page to remove my customized version of dialer.pl 7.4, in favor of documenting there the "net stop beep" and "net start beep" commands.
N.B. A reader of this page contributed information about the "sc" command. The command "sc config beep start= disabled" will disable the beep service completely, achieving beep-free existence of a more permanent nature.