<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > C#中用API實現(xiàn)MP3等音頻文件的播放類

          C#中用API實現(xiàn)MP3等音頻文件的播放類

          作者: 時間:2009-06-15 來源:網(wǎng)絡(luò) 收藏
          沒有提供的類,要編寫程序,必須使用第三方控件或類。本文使用函數(shù)mciSendString,編寫一個的類。

          具體源碼如下:

          本文引用地址:http://www.ex-cimer.com/article/166946.htm

          一、使用函數(shù)mciSendString構(gòu)成的媒體播放類。

          using System;

          using System.Runtime.InteropServices;

          using System.Text;

          using System.IO ;

          namespace clsMCIPlay

          {

            ///

            /// clsMci 的摘要說明。

            ///

            public class clsMCI

            {

          public clsMCI()

          {

            //

            // TODO: 在此處添加構(gòu)造函數(shù)邏輯

            //

          }

          //定義函數(shù)使用的字符串變量

          [MarshalAs(Unmana

          gedType.ByValTStr,SizeConst=260)]

          private string Name = ;

          [MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)]

          private string durLength = ;

          [MarshalAs(UnmanagedType.LPTStr,SizeConst=128)]

          private string TemStr =;

          int ilong;

          //定義播放狀態(tài)枚舉變量

          public enum State

          {

            mPlaying = 1,

            mPuase = 2,

            mStop = 3

          };

          //結(jié)構(gòu)變量

          public struct structMCI

          {

            public bool bMut;

            public int iDur;

            public int iPos;

            public int iVol;

            public int iBal;

            public string iName;

            public State state;

          };

          public structMCI mc =new structMCI() ;

          //取得播放文件屬性

          public string FileName

          {

            get

            {

          return mc.iName;

            }

            set

            {

          //ASCIIEncoding asc = new ASCIIEncoding();

          try

          {

            TemStr =;

            TemStr = TemStr.PadLeft(127,Convert.ToChar( ));

            Name = Name.PadLeft(260,Convert.ToChar( )) ;

            mc.iName = value;

            ilong = APIClass.GetShortPathName(mc.iName,Name, Name.Length);

            Name = GetCurrPath(Name);

            //Name = open + Convert.ToChar(34) + Name + Convert.ToChar(34) + alias media;

            Name = open + Convert.ToChar(34) + Name + Convert.ToChar(34) + alias media;

            ilong = APIClass.mciSendString(close all, TemStr, TemStr.Length , 0);

            ilong = APIClass.mciSendString( Name, TemStr, TemStr.Length, 0);

            ilong = APIClass.mciSendString(set media time format milliseconds, TemStr, TemStr.Length , 0);

            mc.state = State.mStop;

          }

          catch

          {

            MessageBox.Show(出錯錯誤!);

          }

            }

          }

          //播放

          public void play()

          {

            TemStr = ;

            TemStr = TemStr.PadLeft(127,Convert.ToChar( ));

            APIClass.mciSendString(play media, TemStr, TemStr.Length , 0);

            mc.state = State.mPlaying ;

          }

          //停止


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();