Страницы: 1
RSS
как проигрывать wav файл с повтором ???
 
Подскажите, кто знает, у меня есть такой код:

Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszName As String, ByVal dwFlags As Long) As Long
Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long

  Sub музыка()
Call sndPlaySound("D:\песня.wav", 1)
End Sub

и мне нужно, чтобы эта песня проигрывалась постоянно с повтором, т.е. когда песня доиграла до конца, то она опять должна играть сначала. И ещё если это важно, то мне это нужно для создания фоновой музыки, т.е. в процессе воспроизведения этой музыки с повтором я могу ещё также запускать и другие звуковые файлы wav.
А когда мне нужно остановить фоновую музыку, то я запускаю этот макрос :

  Sub остановка_музыки()
Call sndPlaySound("", 4)
End Sub

Как мне нужно прописать код для повтора проигрывания wav файла ???
 
Так вот можно:
Код
#If Win64 Then
  Private Declare PtrSafe Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" ( _
          ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
#Else
  Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" ( _
          ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
#End If
   
Sub PlayWavLoop()
  Const WavFile = "C:\WINDOWS\Media\notify.wav"
  If sndPlaySound(WavFile, 9&) = 0 Then
    MsgBox "Can't play " & WavFile
  End If
End Sub

Sub PlayStop()
    sndPlaySound vbNullString, 3&
End Sub
Изменено: ZVI - 04.01.2013 01:19:48
 
Спасибо, но это не работает если я хочу ещё другой звук параллельно услышать 1 раз...

этот звук я запускаю моим описанным способом..
Или это невозможно в excel чтобы одновременно играли несколько звуков ???
тогда я пойму что сделать ничего нельзя...
 
Не проверял, но попробуйте запустить второй звук в другом экземпляре Excel.
 
А не подскажите ещё одну вещь : мне нужно после окончания проигрывания песня1 чтобы начала играть пенся2, но если это прописать так, то играет сразу песня2

Sub музыка()
Call sndPlaySound("D:\песня1.wav", 1)
Call sndPlaySound("D:\песня2.wav", 1)
End Sub

что мне нужно дописать ???
Страницы: 1
Читают тему
Наверх