Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function plays a single waveform sound. To play multiple sounds simultaneously, use the waveOut*functions in the Waveform Audio API.

Syntax

BOOL sndPlaySound(
  LPCTSTR 
lpszSoundName,
  UINT 
fuSound
); 

Parameters

lpszSoundName

Long pointer to a null-terminated string that specifies the sound to play. This parameter can be either an entry in the registry or in WIN.INI that identifies a system sound, or it can be the name of a waveform-audio file. (If the function does not find the entry, the parameter is treated as a file name.) If this parameter is NULL, any currently playing sound is stopped.

fuSound

Flags for playing the sound. The following table shows the possible values.

Value Description

SND_ALIAS

The pszSoundparameter is a system-event alias in the registry or the WIN.INI file. Do not use with either SND_FILENAME or SND_RESOURCE.

SND_ASYNC

The sound is played asynchronously and PlaySoundreturns immediately after beginning the sound. To terminate an asynchronously played waveform sound, call PlaySoundwith pszSoundset to NULL.

SND_FILENAME

The pszSoundparameter is a file name.

SND_LOOP

The sound plays repeatedly until PlaySoundis called again with the pszSoundparameter set to NULL. You must also specify the SND_ASYNC flag to indicate an asynchronous sound event.

SND_MEMORY

A sound event's file is loaded in RAM. The parameter specified by pszSoundmust point to an image of a sound in memory.

SND_NODEFAULT

No default sound event is used. If the sound cannot be found, PlaySoundreturns silently without playing the default sound.

SND_NOSTOP

The specified sound event will yield to another sound event that is already playing. If a sound cannot be played because the resource needed to generate that sound is busy playing another sound, the function immediately returns FALSE without playing the requested sound.

If this flag is not specified, PlaySoundattempts to stop the currently playing sound so that the device can be used to play the new sound.

SND_SYNC

Synchronous playback of a sound event. PlaySoundreturns after the sound event completes.

Return Value

TRUE indicates success. FALSE indicates failure.

Remarks

The SND_NOSTOP flag controls how the current call to sndPlaySoundbehaves if a previous call is still playing.

If the specified sound cannot be found, sndPlaySoundplays the system default sound. If there is no system default entry in the registry or WIN.INI file, or if the default sound cannot be found, the function makes no sound and returns FALSE.

The specified sound must fit in available physical memory and be playable by an installed waveform-audio device driver.

Requirements

Header mmsystem.h
Library coredll.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also