C#界說的MP3播放類實例。本站提示廣大學習愛好者:(C#界說的MP3播放類實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C#界說的MP3播放類實例正文
本文實例講述了C#界說的MP3播放類。分享給年夜家供年夜家參考。詳細剖析以下:
這裡應用C#界說一個MP3播放類,將Mp3文件作為資本文件包括到項目中,便可以播放mp3了
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; using System.Runtime.InteropServices; namespace Mp3Tool { public Class MP3Player { [DllImport ("winmm.dll")] static extern Int32 mciSendString (String command,StringBuilder buffer, Int32 bufferSize, IntPtr hwndCallback); /// <summary> /// temporary repository of music files /// </ summary> private String m_musicPath = ""; /// <summary> /// parent window handle /// </ summary> private IntPtr m_Handle; /// <summary> /// Create Mp3 player class /// </ summary> /// <PARAM name="music">embedded music file</ param> /// <PARAM name="path">temporary music file path</ param> /// <PARAM name="Handle">parent window handle</ param> public MP3Player (Byte [] Music, String path, IntPtr Handle) { try { m_Handle = Handle; m_musicPath = Path.Combine (path, "temp.mp3"); FileStream fs = new FileStream (m_musicPath, FileMode.Create); fs.Write (Music, 0, music.Length); fs.Close (); } catch (Exception) { } } /// <summary> /// Create Mp3 player class /// </ summary> /// <PARAM name="musicPath">to play the mp3 file path</ param> /// <PARAM name="Handle">parent window handle</ param> public MP3Player(String musicPath, IntPtr Handle) { m_musicPath = musicPath; m_Handle = Handle; } public MP3Player(Byte [] Music, IntPtr Handle) : this(Music, @"C:\Windows\",Handle) { } public void Open (String path) { IF (path ! = "") { try { mciSendString ("Open " + path + " alias Media", null, 0, m_Handle); mciSendString ("play Media", null, 0, m_Handle); } catch (Exception) { } } } public void Open() { Open (m_musicPath); } void CloseMedia() { try { mciSendString ("Close ALL", null, 0, m_Handle); } catch (Exception) { } } } }
挪用辦法:
private void Main() { //load music MP3Player MP3 = new MP3Player (Properties.Resources.music, Handle); //music start playing mp3.Open (); }
願望本文所述對年夜家的C#法式設計有所贊助。