The easiest way to prevent Windows XP or Windows Server 2003 from beeping is to
disable the Beep service.
I have scripted NoBeep.bat to disable the Beep service, and if it is started, stop it.
The syntax for using NoBeep.bat is:
NoBeep [\\ComputerName]
Where \\ComputerName is optional. If not specified, the action is performed on the local computer.
NoBeep.bat contains:
@echo off
setlocal
set command=sc query beep
set qry=REG ADD HKLM\SYSTEM\CurrentControlSet\Services\Beep
set stop=sc stop beep
if not {%1}{} set stop=sc %1 stop beep
if not {%1}=={} set qry=REG ADD %1\HKLM\SYSTEM\CurrentControlSet\Services\Beep
@echo %qry% /V Start /T REG_DWORD /F /D 4
%qry% /V Start /T REG_DWORD /F /D 4
for /f "Tokens=*" %%a in ('%command%^|find " RUNNING"^|find "STATE"') do (
%stop%
)
endlocal