在.NET的winform里面,没有托管的音乐播放器,API只能播放WAV格式,对于MP3等形式的音频文件,就要依赖于 MediaPlayer里,嘿嘿

使用的方法:

  1. 在toolbox上点右键,选择“选择项目(Choose Items)”(vs2010中文版为选择项),切到COM页,找到 Windows Media Player, 勾选,确定
  2. 在toolbox上,把刚才加入的MediaPlayer控件,拖放到Winform上

代码:

axWindowsMediaPlayer1.URL = @"文件路径,支持网络路径";axWindowsMediaPlayer1.Ctlcontrols.play();

呵呵,基本就OK了, 至于其他的操作,大家直接看 axWindowsMediaPlayer1.Ctlcontrols. 下面的内容吧

右击工具箱->选择项(I)... -> 显示"选择工具箱项" -> COM组件 -> Windows Media Player   wmp.dll 添加

axWindowsMediaPlayer1.windowlessVideo = false;   //设为false后双击屏幕可以全屏
axWindowsMediaPlayer1.fullScreen = true; //设播放器全屏播放

axWindowsMediaPlayer1.URL = @"mms://192.168.0.102/vod/jingwei.wma";

axWindowsMediaPlayer1.Ctlcontrols.play();        //播放
axWindowsMediaPlayer1.Ctlcontrols.stop();        //停止
axWindowsMediaPlayer1.Ctlcontrols.pause();       //暂停

axWindowsMediaPlayer1.settings.autoStart = true;     //自动播放

axWindowsMediaPlayer1.settings.mute = false;         //静音
axWindowsMediaPlayer1.settings.volume = 100;      // 音量 int 0 ~ 100   100 是最大音量

axWindowsMediaPlayer1.currentMedia.duration.ToString();//影片长度
axWindowsMediaPlayer1.Ctlcontrols.currentPosition = 30; //当前的播放位置 double

axWindowsMediaPlayer1.currentMedia.getItemInfo("Title");//标题
axWindowsMediaPlayer1.currentMedia.getItemInfo("Author");//作者

//*****************************************************************************//

//*****************************************************************************//

MediaPlay 以前版本

右击工具箱->选择项(I)... -> 显示"选择工具箱项" -> COM组件 -> 浏览(B)... -> C:WINDOWS\system32\msdxm.ocx -> 打开
Windows Media Player   msdxm.dll 添加

label4.Text = axMediaPlayer1.Volume.ToString();    //音量
axMediaPlayer1.FileName = @"mms://218.98.101.164/vod/jingwei.wma";//文件路径
axMediaPlayer1.Play(); //开始播放

//******************************************************************************//
//****************************************************************************//

右击工具箱->选择项(I)... -> 显示"选择工具箱项" -> COM组件 -> RealPlayer G2 Control   rmoc3260.dll 添加

axRealAudio1.Source = @"F:\mp3\hh.mp3"; //播放路径

axRealAudio1.CanPlayPause();   //Bool 型是否能暂停
axRealAudio1.CanPause();   //暂停
axRealAudio1.DoPlayPause();             //正在播放的影片暂停播放

axRealAudio1.CanPlay();    //Bool是否能播放
axRealAudio1.DoPlay();    //播放

axRealAudio1.CanStop()          //播放是否可以停止
axRealAudio1.DoStop();           //播放停止

axRealAudio1.SetCenter(true);           //按影片原大小播放
axRealAudio1.SetFullScreen();//播放器全屏播放影片

int place = axRealAudioP.GetPosition();
axRealAudio1.DoStop();
axRealAudio1.SetCente*(**lse);               //拉伸播放 axRealAudio1.SetCenter(true); 按影片原始大小播放
axRealAudio1.DoPlay();
axRealAudio1.SetPosition(place);

nResL = axRealAudio1.GetPosition(); //获得当前影片 的播放进度
label1.Text = axRealAudio1.GetTitle();   //获得影片的标题
label2.Text = "当前的带宽: " + axRealAudio1.GetBandwidthCurrent() / 1024 + "KB";//当前影片的当前的带宽              
label3.Text = "连接的带宽: " + axRealAudio1.GetConnectionBandwidth() / 1024 + "KB"; //当前的连接的带宽

找这些资源用了我半天,干脆放到一个程序里.对没写过的人还是有一定的参考价值的.

扩展阅读:http://eagletff.blog.163.com/blog/static/1163509282010422140951/

C# 里窗体里(windows form)怎么播放音乐的更多相关文章

  1. C# Windows form application 播放小视频

    1. 下载direcly-show lib DLL点击打开链接 2. DxPlay.cs (能够在下载的样例中找到):    public class DxPlay : IDisposable { e ...

  2. 使用 windows 计划任务播放音乐文件

    这个问题网上可以搜到很多答案,但都有一些小细节没有交代,而我平时又很少使用计划任务,所以配置中出了点问题,特此备注. 1.播放器 检查当前系统下目标文件的默认播放器是什么,并且确保可以运行. 比如首次 ...

  3. 关于Windows 8使用WMP播放音乐时WUDFHost跑CPU和硬盘的问题解决

    Windows 8使用Windows Media Player播放音乐的时候.事实上有一个这种情况,WMP和某个什么名字看起来非常屌的进程跑CPU非常高,这个跑非常高视你插入的SD卡内的文件数或者移动 ...

  4. 变不可能为可能 - .NET Windows Form 改变窗体类名(Class Name)有多难?续篇

    发布<.NET Windows Form 改变窗体类名(Class Name)有多难?>转眼大半年过去了,要不是在前几天有园友对这篇文章进行评论,基本上已经很少关注它了,毕竟那只是一个解惑 ...

  5. 记住 MVC里用formcollection接收form表单传来的值,表单属性必须有name为健!

    记住 MVC里用formcollection接收form表单传来的值,input属性必须有name为健! 调了一晚上!! 写个日志记下!!

  6. windows form (窗体) 之间传值小结

    windows form (窗体) 之间传值小结   windows form (窗体) 之间传值小结 在windows form之间传值,我总结了有四个方法:全局变量.属性.窗体构造函数和deleg ...

  7. windows form参数传递过程

    三.windows form参数传递过程 在Windows 程序设计中参数的传递,同样也是非常的重要的. 这里主要是通过带有参数的构造函数来实现的, 说明:Form1为主窗体,包含控件:文本框text ...

  8. Ninject之旅之十二:Ninject在Windows Form程序上的应用(附程序下载)

    摘要: 下面的几篇文章介绍如何使用Ninject创建不同类型的应用系统.包括: Windows Form应用系统 ASP.NET MVC应用系统 ASP.NET Web Form应用系统 尽管对于不同 ...

  9. 在WPF中添加Windows Form控件(包括 ocx控件)

      首先,需要向项目中的reference添加两个dll,一个是.NET库中的System.Windows.Forms,另外一个是WindowsFormsIntegration,它的位置一般是在C:\ ...

随机推荐

  1. 关于__irq 的使用

    __irq为一个标识,用来表示一个函数是否为中断函数. 对于不同的编译器,__irq在函数名中的位置不一样,例如: ADS编译器中 : void __irq IRQ_Eint0(void); Keil ...

  2. 对于利用ica进行fmri激活区识别的理解

    首先,ica是一种探索性的方法,属于数据驱动的范畴. ica计算量很大,一般都是离线式计算. ica基于的猜想是,世界是加性的.在我们所研究的脑科学中,所采集到的BOLD信号,是由一些源信号所构成,更 ...

  3. 区分execl与system——应用程序中执行命令

    execl:相关函数:fork, execle, execlp, execv, execve, execvp表头文件:#include <unistd.h>函数定义:int execl(c ...

  4. Android protectionLevel

    Android protectionLevel分4个级别: "normal" "dangerous" "signature" "s ...

  5. python 3 处理HTTP 请求的包

    http http: https://docs.python.org/3/library/http.html http是一个包,里面含有多个模块:http.client,http.server,htt ...

  6. Google翻译

    本博文的主要内容有 .Google翻译的介绍    .Google翻译之一:内容板块的翻译    .Google翻译之二:网页的翻译  .Google翻译之四:文档的翻译    .Google翻译之四 ...

  7. Cocos2d-x CCActionInterval

    第一部分:CCActionInterval家族(持续动作) 持续动作,顾名思义,就是该动作的执行将持续一段时间.因此持续动作的静态生成函数,往往附带一个时间值Duration.例如: CCAction ...

  8. linux驱动开发之HelloWorld

    最近实习,公司项目搞的是平板开发,而我分配的任务是将驱动加载到内核中. 准备工作,必要知识了解:加载有两种方式,一种是动态加载和卸载即模块加载,另一种是直接编译进入内核:Linux内核把驱动程序划分为 ...

  9. 不区分大小写的in_array实现 thinkphp框架

    // 不区分大小写的in_array实现 function in_array_case($value,$array) { return in_array(strtolower($value),arra ...

  10. c#基础语言编程-常用函数

    类型转换Convert Convert考虑数据意义的转换. Convert是一个加工.改造的过程.在使用Convert的转换过程中不会返回异常,当遇到类型转换的不知道的时候,用Convert找找. T ...