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 server feature.
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