Click here to Skip to main content
14,026,166 members
Click here to Skip to main content
Add your own
alternative version


18 bookmarked
Posted 12 Nov 2008
Licenced CPOL

Another Article on MP3 Players using Windows Media Player

, 12 Nov 2008
Rate this:
Please Sign up or sign in to vote.
Play your MP3s with this Audio Player


This program was derived from the Ultimate Player Source which can be found on The Code Project. I added a lot of stuff to this MP3 player - current play time and time remaining, re-did the balance track bar (-100, 0, 100) min, value, max properties, respectively, to work correctly.

I do not have any design experience, so don't laugh…chuckles. This does work and is very powerful. Have fun using Audio PlayerWMP. I hate tooltips, so all tips can be found by mousing over the buttons. Tips are loaded in a textbox centered between the two columns of buttons, see picture below:


Selecting MP3s

The Ultimate Player Source only lets you select one file at a time. I thought that opening, selecting 1, opening, selecting 1…(you get the idea) was not exactly what I was looking for, so I added multiselect to the Open File Dialog box.

Private Sub LoadFiles(ByVal mediaType As String)
        Dim supportedFiles As String

        Select Case mediaType
            Case "Audio"
                supportedFiles = audioFiles
            Case Else
                supportedFiles = audioFiles
        End Select

        With ofd
            .InitialDirectory = "C:\Users\" & GetUserName() & "\Music\"
            .Filter = supportedFiles
            .CheckFileExists = True
            .Multiselect = True
            .RestoreDirectory = True
        End With

        If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then

            For Each Me.fileNamePath In ofd.FileNames
                fileNameShow = GetFileName(fileNamePath)
        End If

    End Sub 

I had to add a GetUserName function (see in the picture above) so everyone could use this program. I got this code from the comments in the program:

Function GetUserName() As String
        If TypeOf My.User.CurrentPrincipal Is  _
        Security.Principal.WindowsPrincipal Then
            Dim parts() As String = Split(My.User.Name, "\")
            Dim username As String = parts(1)
            Return username
            Return My.User.Name
        End If
    End Function 

Label Timers

Here is the code for the labels that I used in the timerDuration_Scroll Event…

lblTime.Text = axWMP.Ctlcontrols.currentPositionString
lblDuration.Text = Format_
		(Int(axWMP.currentMedia.duration - axWMP.Ctlcontrols.currentPosition)
                              \ 60, "00") & ":" & _
                   Format(Int(axWMP.currentMedia.duration - _
                               Mod 60, "00").ToString

Volume and Balance Track Bars

I added code to display to the user on how much volume he or she is using, and did the same for the balance (see the above picture).

To the Authors

To all the authors of code that I used (all names are in comments throughout the program), I thank you all very much. Special thanks goes to the creator of Ultimate Player Source for his idea on Windows Media Player.


  • 12th November, 2008: Initial post

I have no degree, but I have had programming experience in college (Pascal and COBOL). I worked in construction for 30+ years and now retired. So I decided to take up VB as a hobbyist. I have learned quite a lot by downloading programs from The Code Project. I thank all the authors who have uploaded their articles. This is actually a better place to learn from.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

United States United States
I am currently retired.
I have no degree but I have some programming experience
when I was in college(Cobol, Pascal).

My accomplishments thus far are;
Best VB.Net article for January(2009)
Best VB.Net article for July(2009)

You may also be interested in...


Comments and Discussions

GeneralMy vote of 5 Pin
Manoj Kumar Choubey24-Feb-12 1:35
professionalManoj Kumar Choubey24-Feb-12 1:35 
GeneralIf you want to try some more .NET Pin
Sacha Barber13-Jul-09 1:48
mvaSacha Barber13-Jul-09 1:48 
GeneralRe: If you want to try some more .NET Pin
rspercy6513-Jul-09 2:26
memberrspercy6513-Jul-09 2:26 
GeneralRe: If you want to try some more .NET Pin
Sacha Barber13-Jul-09 4:55
mvaSacha Barber13-Jul-09 4:55 
GeneralRe: If you want to try some more .NET Pin
rspercy6513-Jul-09 12:04
memberrspercy6513-Jul-09 12:04 
GeneralRe: If you want to try some more .NET Pin
Sacha Barber13-Jul-09 21:41
mvaSacha Barber13-Jul-09 21:41 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web02 | 2.8.190419.4 | Last Updated 12 Nov 2008
Article Copyright 2008 by rspercy65
Everything else Copyright © CodeProject, 1999-2019
Layout: fixed | fluid