効果音の演奏停止について

解決


初心者プログラマ  2004-07-16 09:04:47  No: 114842  IP: [192.*.*.*]

下記で効果音をループさせていますが、

Private Sub Form_Activate()
    sndPlaySound App.Path & "\" & "Sound1", SND_ASYNC Or SND_LOOP
End Sub

下記で演奏停止をしてくれません。
(ループから抜けない)

Private Sub Form_Unload(Cancel As Integer)
    sndPlaySound vbNullChar, SND_NODEFAULT
    Unload Form2
End Sub

↑どうすればよいか教えてください。
よろしくお願いします。

-----------------------------------------
[VB6](Form1〜4,Module1)

Module1

Public Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" _
(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

Public Const SND_SYNC = &H0
Public Const SND_ASYNC = &H1
Public Const SND_NODEFAULT = &H2
Public Const SND_MEMORY = &H4
Public Const SND_LOOP = &H8
Public Const SND_NOSTOP = &H10

編集 削除
ポテチ  2004-07-16 09:16:42  No: 114843  IP: [192.*.*.*]

vbNullChar

のところを

vbNullString

に変えてみてください。

編集 削除
特攻隊長まるるう  2004-07-16 09:27:14  No: 114844  IP: [192.*.*.*]

第2引数も SND_ASYNC の方がいいんじゃないですか?
 Call sndPlaySound(vbNullString, SND_ASYNC)

編集 削除
初心者プログラマ  2004-07-16 09:29:05  No: 114845  IP: [192.*.*.*]

ポテチ様

ありがとうございました!!
無事解決しました!!

編集 削除
初心者プログラマ  2004-07-16 09:31:12  No: 114846  IP: [192.*.*.*]

特攻隊長まるるう様

入れ違いになりました。
参考にさせていただきます。
(今からやってみます)
ありがとうございました。

編集 削除