Ervin Brindza
viner at EUnet.yu
Fri Apr 28 07:30:04 CDT 2006
Search topic "Play a wav file (sound file) in an Access database" on
http://www.techonthenet.com/access
Ervin
From: "Gary J. Giever" <gjgiever at myway.com>
To: <accessd at databaseadvisors.com>
Sent: Friday, April 28, 2006 2:09 PM
Subject: Re: [AccessD] play wav file
>
> ' This code was originally written by Dev Ashish.
> ' It is not to be altered or distributed,
> ' except as part of an application.
> ' You are free to use it in any application,
> ' provided the copyright notice is left unchanged.
> '
> ' Code Courtesy of
> ' Dev Ashish
> '
> Public Const pcsSYNC = 0 ' wait until sound is finished playing
> Public Const pcsASYNC = 1 ' don't wait for finish
> Public Const pcsNODEFAULT = 2 ' play no default sound if sound doesn't
> exist
> Public Const pcsLOOP = 8 ' play sound in an infinite loop (until next
> apiPlaySound)
> Public Const pcsNOSTOP = 16 ' don't interrupt a playing sound
>
> 'Sound APIs
> Private Declare Function apiPlaySound Lib "Winmm.dll" Alias
> "sndPlaySoundA" _
> (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
>
> 'AVI APIs
> Private Declare Function apimciSendString Lib "Winmm.dll" Alias
> "mciSendStringA" _
> (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
> ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
>
> Private Declare Function apimciGetErrorString Lib "Winmm.dll" _
> Alias "mciGetErrorStringA" (ByVal dwError As Long, _
> ByVal lpstrBuffer As String, ByVal uLength As Long) As Long
>
>
> Function fPlayStuff(ByVal strFilename As String, _
> Optional intPlayMode As Integer) As Long
> 'MUST pass a filename _with_ extension
> 'Supports Wav, AVI, MID type files
> Dim lngRet As Long
> Dim strTemp As String
>
> Select Case LCase(fGetFileExt(strFilename))
> Case "wav":
> If Not IsMissing(intPlayMode) Then
> lngRet = apiPlaySound(strFilename, intPlayMode)
> Else
> MsgBox "Must specify play mode."
> Exit Function
> End If
> Case "avi", "mid":
> strTemp = String$(256, 0)
> lngRet = apimciSendString("play " & strFilename, strTemp, 255,
> 0)
> End Select
> fPlayStuff = lngRet
> End Function
> Function fStopStuff(ByVal strFilename As String)
> 'Stops a multimedia playback
> Dim lngRet As Long
> Dim strTemp As String
> Select Case LCase(fGetFileExt(strFilename))
> Case "Wav":
> lngRet = apiPlaySound(0, pcsASYNC)
> Case "avi", "mid":
> strTemp = String$(256, 0)
> lngRet = apimciSendString("stop " & strFilename, strTemp, 255,
> 0)
> End Select
> fStopStuff = lngRet
> End Function
>
> Private Function fGetFileExt(ByVal strFullPath As String) As String
> Dim intPos As Integer, intLen As Integer
> intLen = Len(strFullPath)
> If intLen Then
> For intPos = intLen To 1 Step -1
> 'Find the last \
> If Mid$(strFullPath, intPos, 1) = "." Then
> fGetFileExt = Mid$(strFullPath, intPos + 1)
> Exit Function
> End If
> Next intPos
> End If
> End Function
>
> Function fGetError(ByVal lngErrNum As Long) As String
> ' Translate the error code to a string
> Dim lngx As Long
> Dim strErr As String
>
> strErr = String$(256, 0)
> lngx = apimciGetErrorString(lngErrNum, strErr, 255)
> strErr = Left$(strErr, Len(strErr) - 1)
> fGetError = strErr
> End Function
> Function fatest()
> Dim a As Long
> a = fPlayStuff("C:\winnt\clock.avi")
> 'a = fStopStuff("C:\winnt\clock.avi")
> End Function
>
>
>
> Gary J. Giever, M.A.
> Applications Developer
> ACCMHS
> 3285 122nd Avenue
> PO Drawer 130
> Allegan, MI 49010
>
>
> --- On Fri 04/28, John Eget < joeget at vgernet.net > wrote:
> From: John Eget [mailto: joeget at vgernet.net]
> To: AccessD at databaseadvisors.com
> Date: Fri, 28 Apr 2006 03:43:12 -0400
> Subject: [AccessD] play wav file
>
> Is there a way to play a wav file when a form is opened?John -- AccessD
> mailing
> listAccessD at databaseadvisors.comhttp://databaseadvisors.com/mailman/listinfo/accessdWebsite:
> http://www.databaseadvisors.com
>
> _______________________________________________
> No banners. No pop-ups. No kidding.
> Make My Way your home on the Web - http://www.myway.com
>
>
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com