You may not hear the system Beep in an RDP session on Windows Server 2008 R2.
The Beep driver is a front-end for the PlaySound Server. When an application uses the Beep()
function, a request is sent to the PlaySound Server, which will generate a sinusoidal wave in a buffer and send this to the audio driver. For RDP sessions, the RDP audio driver will pick this up, encode it and relay it to the client, but only if audio redirection is enabled.
For Windows 7, this is enabled automatically, and MSTSC only has to be configured to play remote sounds locally.
For Windows Server 2008 R2, you must carry out the following steps to enable redirection of the Beep through the audio redirection mechanism:
1. Install the Desktop Experience
2. Configure the Windows Audio
service to start automatically.
a. Open Services.msc
b. Right-click Windows Audio and select Properties
c. Open the Startup Type dropdown and choose Automatic
d. Click OK.
3. Configure the Beep
service to start automatically. i.e. run 'sc config beep start= auto' from a CMD prompt.
4. Enable the SystemSoundsService
task to run on user logon:
a. Open the Task Scheduler.
b. Go in the Task Library.
c. Navigate to Microsoft/Windows/Multimedia.
d. Right-click the SystemSoundsService task and click Enable
After doing this, logging in remotely and calling Beep()
should generate a similar wave sound as is done on the client.
For more details on this behavior, please refer to the following blog post:http://blogs.msdn.com/b/larryosterman/archive/2010/01/04/what-s-up-with-the-beep-driver-in-windows-7.aspx
for other considerations.