Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Кто знает как правильно сделать? Добавлено: 02.03.07 11:09  

Автор вопроса:  Maximus87


Я воспроизвожу Wave из ресурсов и использую вот такой код:
 
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (lpszSoundName As Any, ByVal uFlags As Long) As Long
Dim WaveData() As Byte
Private Const SND_ASYNC = &H1
Private Const SND_MEMORY = &H4


Private Sub Form_Load()

Dim RetValue As Long
  If Time > "6:00:00" And Time < "16:00:00" Then
    WaveData() = LoadResData(101, "CUSTOM")
    RetValue = sndPlaySound(WaveData(0), SND_ASYNC Or SND_MEMORY)
   If Time > "16:00:00" And Time < "20:00:00" Then
    WaveData() = LoadResData(102, "CUSTOM")
    RetValue = sndPlaySound(WaveData(0), SND_ASYNC Or SND_MEMORY)
   If Time > "20:00:00" And Time < "6:00:00" Then
    WaveData() = LoadResData(103, "CUSTOM")
    RetValue = sndPlaySound(WaveData(0), SND_ASYNC Or SND_MEMORY)
End If
End If
End If

Почему музыка не воспроизводится и как это исправить???

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 02.03.07 13:59
Попробуй в качестве первого параметра указать путь к WAV-файлу. :)

Есть предположение - вместо WaveData(0) использовать просто WaveData (без скобоки нуля)

И еще - зачем тебе SND_MEMORY?

Ответить

Номер ответа: 2
Автор ответа:
 Bonapart



ICQ: 175256 

Вопросов: 32
Ответов: 108
 Web-сайт: team16.tut.su
 Профиль | | #2
Добавлено: 02.03.07 19:55
я видел подобный код в каком то примере
там скобок с нулем не было т.е. музыка(как и картинки)-масив, а ты берёшь одну сотую(если не меньше).
прочитай описание функции sndPlaySound там массив в цикле обрабатывается

Ответить

Номер ответа: 3
Автор ответа:
 Maximus87



Вопросов: 7
Ответов: 11
 Профиль | | #3 Добавлено: 03.03.07 20:44
Спасибо за ответы!
Вот такой код работает:
If Time > "06:00:00 " And Time < "15:00:00 " Then
  WaveData() = LoadResData(101, "CUSTOM";)
  RetValue = sndPlaySound(WaveData(0), SND_ASYNC Or SND_MEMORY)
End If

If Time > "15:00:00 " And Time < "20:00:00 " Then
  WaveData() = LoadResData(102, "CUSTOM";)
  RetValue = sndPlaySound(WaveData(0), SND_ASYNC Or SND_MEMORY)
End If

If Time > "20:00:00 " And Time < "6:00:00 " Then
  WaveData() = LoadResData(103, "CUSTOM";)
  RetValue = sndPlaySound(WaveData(0), SND_ASYNC Or SND_MEMORY)
End If

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам