This documentation is archived and is not being maintained.

SoundPlayer.PlaySync Method

Plays the .wav file and loads the .wav file first if it has not been loaded.

Namespace:  System.Media
Assembly:  System (in System.dll)

public void PlaySync()


The elapsed time during loading exceeds the time, in milliseconds, specified by LoadTimeout.


The file specified by SoundLocation cannot be found.


The .wav header is corrupted; the file specified by SoundLocation is not a PCM .wav file.

The PlaySync method uses the current thread to play a .wav file, preventing the thread from handling other messages until the load is complete. You can use the LoadAsync or Load method to load the .wav file to memory in advance. After a .wav file is successfully loaded from a Stream or URL, future calls to playback methods for the SoundPlayer will not need to reload the .wav file until the path for the sound changes.

If the .wav file has not been specified or it fails to load, the PlaySync method will play the default beep sound.

The following code example demonstrates the use of the PlaySync method to synchronously play a .wav file.

		private SoundPlayer Player = new SoundPlayer();
		private void loadSoundAsync()
			// Note: You may need to change the location specified based on
			// the location of the sound to be played.
			this.Player.SoundLocation = "";
		private void Player_LoadCompleted (
            object sender, 
            System.ComponentModel.AsyncCompletedEventArgs e)
		    if (this.Player.IsLoadCompleted)

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.