?
Solved

How do I launch a .wav file with windows media player minimized to play for 10 sec when in Microsoft Access when a form loads?

Posted on 2007-04-10
10
Medium Priority
?
613 Views
Last Modified: 2010-06-07
How do I launch a .wav file with windows media player minimized to play for 10 sec when in Microsoft Access when a form loads?
0
Comment
Question by:tkschultz1207
10 Comments
 
LVL 15

Expert Comment

by:OMC2000
ID: 18881558
record 10 seconds wav file
in starter module/form open another small form first, open player, set property minimized, specify file to play and start playing.
with the next statement in starter module open your form which takes 10 seconds to get loaded, when it is loaded you might call function from the form, which started started media player to close it and then close that form too.

You could also use MCI32.OCX instead of windows media player.
0
 
LVL 13

Accepted Solution

by:
wiswalld earned 2000 total points
ID: 18881741
Create a module with this
Option Compare Database
Declare Function MessageBeep Lib "user32.dll" (ByVal wType As Long) As Long
Public MySound() As Long ' return value
'wType
Public Const MB_ICONASTERISK = &H40
'Play the SystemAsterisk sound.
Public Const MB_ICONEXCLAMATION = &H30
'Play the SystemExclamation sound.
Public Const MB_ICONHAND = &H10
'Play the SystemHand sound.
Public Const MB_ICONQUESTION = &H20
'Play the SystemQuestion sound.
Public Const MB_OK = &H0
'Play the SystemDefault sound.
Public Const MB_REGULAR = &HFFFFFFFF
'Play a regular beep
Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal LpszSoundName As String, ByVal hMod As Long, ByVal uFlags As Long) As Long
Option Explicit

Public Function PlayWavFile(strPath As String)
    Dim snd_async As Long
    Call PlaySound(strPath, 0, snd_async)
End Function

On open or whatever call this code:

Call PlayWavFile("C:\your wav file")
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 18881765
How long is your wave file now? If u cut it down to 10 seconds (u can still use the good old windows recorder for that), u can simply call this api


Private Declare Function sndPlaySoundA Lib "WINMM.DLL" (ByVal lpszSoundName As String, ByVal ValueFlags As Long) As Long

Global Const SND_ASYNC = &H1
Global Const SND_NODEFAULT = &H2


Public Sub PlayWaveFile(ByVal sFile As String)
  Dim lRet As Long
  lRet = sndPlaySoundA(sFile, SND_ASYNC Or SND_NODEFAULT)
End Sub


Add the above code to a module and call the function PlayWaveFile
eg

PlayWaveFile "c:\fred.wav"

note its asynchronous so function will return even though music still playing in the background
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 65

Expert Comment

by:rockiroads
ID: 18881780
Sorry wiswalld, your post wasnt there when I started typing
0
 

Author Comment

by:tkschultz1207
ID: 18882862
I don't have time to record just ten seconds, is there a way in code I can say stop executing that file after say the timer is up on the form?
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 18883113
Ok, on form_load u play the sound, obviously and set the form's timer to kick in after 10 seconds

then to stop playing the music, u add the code to in the form_timer event

private sub form_timer
    stopthatwavefile
end sub


and the code posted earlier to play a wave file? add this in

Public Sub StopWaveFile()
  Dim lRet As Long
  lRet = sndPlaySoundA(vbNullString, SND_ASYNC)
End Sub

0
 
LVL 65

Expert Comment

by:rockiroads
ID: 18883119
>> I don't have time to record just ten seconds

sound recorder does it for you, u simply move the timer to 10secs then use the menu command to trim the rest then save as
its as simple as that
less than 2 mins work
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 18883130
ok, I see you accepted whilst I was answering your other question
I guess you must of figured it out then
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 18883222
tkschultz1207, just out of curiosity, would you mind telling us how u went about solving the problem of 10 seconds play only?
0
 

Author Comment

by:tkschultz1207
ID: 18888687
Sorry, I accepted the answer before you answered about the 10 seconds. I ended up not cutting the .wav file to 10 seconds and just played the entire .wav on close of the form which ended up being fine, since my presentation was due at 11am Texas time. Thanks for your help.
0

Featured Post

 [eBook] Windows Nano Server

Download this FREE eBook and learn all you need to get started with Windows Nano Server, including deployment options, remote management
and troubleshooting tips and tricks

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Access custom database properties are useful for storing miscellaneous bits of information in a format that persists through database closing and reopening.  This article shows how to create and use them.
Sometimes MS breaks things just for fun... In Access 2003, only the maximum allowable SQL string length could cause problems as you built a recordset. Now, when using string data in a WHERE clause, the 'identifier' maximum is 128 characters. So, …
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
Suggested Courses

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question