본문 바로가기

work/vb

sound API

우선 winmm.dll 파일을 선언하신다음..

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


이 선언된 함수를 사용하려면, sndPlaySound(파일명,플레그) 형식으로 쓰시면 되는데,

이 플레그는 몇 가지가 있습니다.

SND_SYNC = &H0                 ' 사운드가 끝날때 까지 멈춤 불가
SND_ASYNC = &H1              ' 사운드가 플레이 중 언제든지 멈춤가능
SND_NODEFAULT = &H2   '  해당파일이 없더라도 경고 없음
SND_LOOP = &H8                  ' 사운드 펑션이 다시 호출될때 까지 사운드 반복
SND_NOSTOP = &H10          ' 현재 사운드가 플레이중이면 끊지 않고 계속 플레이

파일을 실행 시키시려면..


 x = sndPlaySound("파일명", SND_NOSTOP OR SND_ASYNC)

하시면 파일명에 적어주신 파일이 재생됩니다.
 
 

어떤 이벤트가 있을때 사운드를 멈추고 싶다면,

Play를 할 때:

  x = sndPlaySound("파일명", SND_NOSTOP OR SND_ASYNC)

Play를 멈출때:

  x = sndPlaySound(vbStringNull,SND_NOSTOP OR SND_ASYNC)

처럼 쓰면 됩니다.