Mirror

How to play system sounds (Views: 705)


Problem/Question/Abstract:

Is there any way to play system default sounds (like MessageBeep(mb_IconError) or mb_IconQuestion or these)? I need a way to play all the default sounds set in the system control (e.g. "new mail", "start windows" etc.).

Answer:

If you want to play the sound associated with "Empty Recycle Bin" then call the following procedure. Using the Key Name -> PlayRegisteredSound("EmptyRecycleBin") and Window's takes care of the rest.


procedure PlayRegisteredSound(SoundKeyName: string);
begin
  { call win32 api procedure PlaySound() }
  PlaySound(PChar(SoundKeyName), 0, SND_APPLICATION or SND_NODEFAULT or
    SND_ASYNC or SND_NOWAIT);
end;


Follow the RegKey by examining the keys beneath HKEY_CURRENT_USER\AppEvents\Schemes. Here you'll find where the wav files are registered and changed by the Sounds applet in the Control Panel.

<< Back to main page