Страница: 1 |
Страница: 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-сайт:
Профиль | | #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