Попробуй воспроизвести звук при помощи функции api sndPlaySound
-------------------------------------------------------------------------------------
Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA"(ByVal lpszSoundName As String, _ ByVal uFlags As Long) As Long
Public Const SND_ALIAS = &H10000 'реальное имя файла находится в win.ini
'или в реестре
Public Const SND_ASYNC = &H1 'Асинхронное воспроизведение
Public Const SND_SYNC = &H0 'Синхронное воспроизведение
Public Const SND_NOWAIT = &H2000 ' Не ждать, если драйвер занят
Public Const SND_LOOP = &H8 'Циклическое воспроизведение до следующего вызова
Sub SoundCheck()
Dim lRetVal As Long
lRetVal = sndPlaySound("C:\WINDOWS\MEDIA\CHIMES.wav", SND_SYNC)
lRetVal = sndPlaySound("SystemStart", SND_ALIAS + SND_ASYNC + SND_ NOWAIT)
'SystemStart - представляет собой псевдоним систмного звука. Имя реального файла находится
'в реестре(где, кстати, описаны и остальные системные звуки.)
End Sub
--------------------------------------------------------------------------------------
Создашь модуль, скинешь туда все описанные выше константы и объявление функции, а процедуру Sub SoundCheck в процедуру обработки событий кнопки. Вместо "C:\WINDOWS\MEDIA\CHIMES.wav" пропишешь полный путь к своему wav файлу и всё заиграет. Я так уже делал.