Link to home
Start Free TrialLog in
Avatar of m_durnell
m_durnellFlag for United Kingdom of Great Britain and Northern Ireland

asked on

Playing a music file at runtime

Hi

I have written a small program in VB6 which is a clock that at runtime at a time previouysly entered will display a message box.  This part works OK

I would like the second part of the program to play a sound such as from a CD or off the hard drive etc - This is my problem.  I have written the following code:

Private Sub Timer1_Timer()
Label1.Caption = Time
CurrentTime = Format(Time, "hh:mm:ss")
    If CurrentTime = Text1.Text Then
    Beep   ' Sound a tone.
        MsgBox (Text2.Text), , "Alarm Clock Reminder"
        Timer1.Enabled = False
        Form1.WindowState = 0 'Restore form to original size
    End If
End Sub

I was able to make the speaker sound a 'beep' but cannot make it play a music file.  Any help much appreciated.

Regards

Mark

ASKER CERTIFIED SOLUTION
Avatar of Ryan Chong
Ryan Chong
Flag of Singapore image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of m_durnell

ASKER

Hi Ryancys

Thanks for your comments, but what I really want is a sample of code that will "Play" a music file when a certain time is reached as the "Beep" sound does in the code in my previous comment.

For example I want the program to play the following file

c:\music\Eva1.mp3 etc

Any further help appreciated.

Regards

Mark
M,
this is a sub that I use to play a song/noise/anything.  It uses the MMcontrol that can be added in the from the toolbar components selection (Microsoft Multimedia Control 6 (SP3)).  In my example it is called Media.  This also uses a FSO object to determine if the file exists before trying to play it.  I have had a little trouble getting it to play mp3's but it handles wav files just fine.  And I think that it can play a mp3 I just didn't follow up on it.  I hope this helps you

G



Public Sub PlaySong(ByVal SongTitle As String)
       
       
    If FileTool.FileExists(SongTitle) = False Then
        Call WriteLogLine("You got lucky this time no Audio File found")
        Exit Sub
    End If
       
    With frmSample.Media
        .Notify = False
        .Wait = True
        .Shareable = False
        .DeviceType = "waveaudio"
        .FileName = SongTitle
        .Command = "open"
        .Command = "play"
    End With
   
End Sub
Try use Sleep api to pause for certain period?

Declare Sub Sleep Lib "kernel32" Alias "Sleep" ( _
           ByVal dwMilliseconds As Long _
)

http://www.allapi.net/apilist/apifunction.php?apifunction=Sleep
Ryancys

Thanks for the help with a little work I was able to get my alarm clock working properly as I intended.  I am going to try and build on it though and will ask a few more questions later in another section.

All the best

Mark