Microsoft
Software
Hardware
Network
Question : How do I stop a PlaySound call that continues output outside the logic of the program that called it?
Below code executes correctly up to the 1st instance that should produce sound. That is the 12th bar of the 5th cycle. Problem is that once the sound is called the 1st time . . . it continues to sound every bar thereafter, even though the code shows it is clearly a one time event.
For C = 1 To CycPhase
iCycStart = (AncDyBar + 1)
iCycEnd = (AncDyBar + (CycLength - 1))
pBarCnt = 0
'*********** Next I Sequence **************
For i = iCycStart To iCycEnd
pBarCnt = pBarCnt + 1
' PlayNow = PlaySound(Null, 0, 0) 'Commented out because does not work
If pBarCnt = 12 Then
v1(z1, i) = Bar(2, i)
If C = 5 Then '5th cycle
PlayNow = PlaySound(A, p, SND_FILENAME Or SND_ASYNC Or SND_NOWAIT)
End If
End If
Next i
AncDyBar = i
Next C
I've tried SndPurge and the Null string as shown commented out above. The null string stops the dll from working altogether and the SndPurge does nothing . . . and nothing stops a repeating call to the wav file. Below is further information to help.
Public Declare Function PlaySound _
Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, _
ByVal dwFlags As Long) As Long
Public Const SND_FILENAME = &H20000 'name is a file name
Public Const SND_ASYNC = &H1 'play asynchronously
Public Const SND_NOWAIT = &H2000 'don't wait if the driver is busy
Public Const SND_PURGE = &H40 'stop sound (longer wav)
Thank You,
spc909
Answer : How do I stop a PlaySound call that continues output outside the logic of the program that called it?
how about
PlaySound(vbNullString, 0, 0)
Random Solutions
Getting data from Access table
OnClientClick Needs PostBack
Powershell script that enumerates folder permissions.
Slow network
No Internet after reinstall of Windows XP on Dell desktop
Modify Cron Job
FREE SMS Text Messaging API
Windows 7 Home not accessing the internet
jquery image slider
Active Directory Logout Logged on Users