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:
Right-click My Computer and select Manage.
Expand System Tools and select Device Manager.
From the View menu, select Show hidden devices.
Expand Non-Plug and Play Drivers.
Right-click Beep, and select Properties.
Select the Drivers tab.
Click Stop. You can also change the start-up type to Disabled
so the beep service never starts.
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.