# Function Reference

# _SoundStop

Stop a playing sound

#include <Sound.au3>
_SoundStop ( ByRef $aSndID )

## Parameters

$aSndID | Sound ID array as returned by _SoundOpen() or a file name (must be a variable)

## Return Value

Success: | 1.
Failure: | 0 and sets the @error flag to non-zero.
@error: | 1 = Stop Failed 3 = Invalid Sound ID. Use return array from _SoundOpen() or a valid file name.

## Remarks

_SoundPlay() will replay the sound from the beginning.

## Related

_SoundOpen, _SoundPlay

## Example

    #include <MsgBoxConstants.au3>
    #include <Sound.au3>

    Local $aSound = _SoundOpen(@WindowsDir & "\media\tada.wav")
    If @error = 2 Then
        MsgBox($MB_SYSTEMMODAL, "Error", "The file does not exist")
        Exit
    ElseIf @extended <> 0 Then
        Local $iExtended = @extended ; Assign because @extended will be set after DllStructCreate().
        Local $tText = DllStructCreate("char[128]")
        DllCall("winmm.dll", "short", "mciGetErrorStringA", "str", $iExtended, "struct*", $tText, "int", 128)
        MsgBox($MB_SYSTEMMODAL, "Error", "The open failed." & @CRLF & "Error Number: " & $iExtended & @CRLF & "Error Description: " & DllStructGetData($tText, 1) & @CRLF & "Please Note: The sound may still play correctly.")
    Else
        MsgBox($MB_SYSTEMMODAL, "Success", "The file opened successfully")
    EndIf

    _SoundPlay($aSound)

    While 1
        Sleep(100)
        If _SoundPos($aSound, 2) >= 1000 Then
            _SoundStop($aSound)
            ExitLoop
        EndIf
    WEnd

    ; Show that the sound starts from the beginning after its stopped.
    _SoundPlay($aSound, 1)

    _SoundClose($aSound)