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
589 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
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 500 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
Ransomware: The New Cyber Threat & How to Stop It

This infographic explains ransomware, type of malware that blocks access to your files or your systems and holds them hostage until a ransom is paid. It also examines the different types of ransomware and explains what you can do to thwart this sinister online threat.  

 
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

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

I see at least one EE question a week that pertains to using temporary tables in MS Access.  But surprisingly, I was unable to find a single article devoted solely to this topic. I don’t intend to describe all of the uses of temporary tables in t…
Did you know that more than 4 billion data records have been recorded as lost or stolen since 2013? It was a staggering number brought to our attention during last week’s ManageEngine webinar, where attendees received a comprehensive look at the ma…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
With Microsoft Access, learn how to start a database in different ways and produce different start-up actions allowing you to use a single database to perform multiple tasks. Specify a start-up form through options: Specify an Autoexec macro: Us…

756 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