.net上播放MP3
2007/1/22 21:19:58

最近在做一個監(jiān)控項目的時候要求在監(jiān)控的時候可以采用聲音告警,如果用的是VS那么直接調(diào)用Media player好了,可惜自己用的是#Develop做為開發(fā)環(huán)境。居然不支持com組件的引用。我倒~
于是參照MS API寫了下面這個簡單的播放類
 
/*
* Created by SharpDevelop.
* User: root
* Date: 2006-8-16
* Time: 15:44
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Runtime.InteropServices;

namespace Com.Music
{
/// <summary>
/// 音樂播放類
/// 參考:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_multimedia_command_strings.asp
/// </summary>
public class MusicPlayer
{
 
 
 
  [DllImport("winmm.dll")]
  private  static extern long mciSendString(string strCommand,
  string strReturn, int iReturnLength, IntPtr hwndCallback);
 
 
  public MusicPlayer()
  {
  }
  //播放器狀態(tài)
  /*
  *
  * All devices can return the
  * "not ready", "paused", "playing", and "stopped" values.
  * Some devices can return the additional
  * "open", "parked", "recording", and "seeking" values
  * 
  */
  public string Status
  {
  get{
  string sCommand = "status MediaFile mode";
  string  ret="";
  mciSendString(sCommand, ret, 10, IntPtr.Zero);
  return ret.Trim();
  }
  }
 
  private void Open(string sFileName)
  {
  string sCommand="open \"" + sFileName + "\" type mpegvideo alias MediaFile"; 
  //  MediaFile是選擇播放文件類型
  string  ret=null;
  mciSendString(sCommand, ret, 0, IntPtr.Zero);           
        }
  //播放音樂
  public void Play(string filename) 
        {
  Open(filename); 
  string sCommand = "play MediaFile";
  string  ret=null;
        mciSendString(sCommand,ret, 0, IntPtr.Zero);
        }
  //停止播放音樂
  public void Stop()
  { 
  string sCommand = "stop MediaFile";
  string  ret=null;
  mciSendString(sCommand, ret, 0, IntPtr.Zero);
  }
 
  public void Pause()
  { 
  string sCommand = "pause MediaFile";
  string  ret=null;
  mciSendString(sCommand, ret, 0, IntPtr.Zero);
  }
 
}
}
 
播放的話只要一句就搞定
MusicPlayer mp = new MusicPlayer();
void Button1Click(object sender, System.EventArgs e)
  {
      mp.Play("H:/mp3/十七歲的雨季.mp3"); 
  }


另外拿這個測試拉下MONO 1.6 beta 還不錯開來MONO也開始支持調(diào)用OS本地API了。

返回列表
返回首頁 主站蜘蛛池模板: 99久久精品免费精品国产| 亚洲av无码一区二区乱子伦as | 亚洲天天综合网| 男女猛烈xx00免费视频试看| 国产一区二区三区不卡av| 国产在线乱子伦一区二区| 国产综合在线观看视频| jizzyou中国少妇| 成年丰满熟妇午夜免费视频| 久久精品.com| 欧美XXXXX高潮喷水麻豆| 亚洲第一成年免费网站| 第一福利官方导航| 嘟嘟嘟www免费高清在线中文 | 激情偷乱人伦小说视频在线 | 扒开两腿中间缝流白浆在线看| 乱人伦老妇女东北| 欧美日韩视频在线观看高清免费网站| 免费人成年激情视频在线观看| 羞羞漫画小舞被黄漫免费| 国产免费的野战视频| 欧美在线色视频| 国产精品影音先锋| 97人妻天天爽夜夜爽二区| 女人让男人桶的小视频| 中国体育生gary飞机| 无码日韩精品一区二区免费 | 美团外卖猛男男同38分钟| 国产乱人伦app精品久久| 黄色网站在线观看视频| 国产第一页在线观看| 2019国产开嫩苞视频| 国内精品18videosex性欧美| a级黄色毛片免费播放视频| 成人中文字幕一区二区三区| 久久中文网中文字幕| 日韩avapp| 久久青草亚洲AV无码麻豆| 欧美乱妇高清视频免欢看关| 亚洲成AV人片在线观看无码不卡| 毛片在线播放a|