我正在用ASP.net做毕业设计,学校里学的都是一些数据库的操作,但是我想在网页上增加一些多媒体的成分,比如说一个网页上的音乐播放器。我曾经在windForm上用MediaPlayer组件做了一个播放器,实现了单曲循环,全部循环,单曲播放,顺序播放,也能够建立自己的收藏夹,通过一些按钮单击操作随时维护自己喜欢的歌曲(使用文件流的读写操作),我也想把这个播放器移植到webForm上,也能够通过按钮来控制他,如同在windForm上的一样,但是,我首先碰到的第一个难题是:在VS2008开发环境中,如何把MediaPlayer控件,拖拽到webForm上,如同在windForm拖拉按钮一样,我也像做windForm播放器一样,“工具”->“工具箱选项”-->“COM组件”-->选中“WindowsMediaPlayer”,就可把他添加到工具箱中,然后拉到窗体上。在web上我也这样做了,COM组件里也有WindowsMediaPlayer组件,但是却无法添加到web开发环境的工具箱中。尝试了很多方法,比如也用了WindowsMediaPlayerClass类(它的引用位于C:\windows\system32\wmp.dll,右击添加引用添加进来),
定义它的一个对象,给它的URL赋值一个歌曲的路径,一运行能够播放音乐,但是MediaPlayer经典的外观却无法显示出来,也只能是背景音乐;用HTML倒是可以显示MediaPlayer的经典外观却不能用C#代码来控制。这两种方法,都不能达到预期的效果,问了几个老师,也是一无所获,所以小弟来请各位前辈高手请教,请大家多多指教!帮小弟解决这个问题!

解决方案 »

  1.   

    杯具,老师也不知道?<OBJECT id="VIDEO" width="320" height="240" 
    style="position:absolute; left:0;top:0;"
    CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
    type="application/x-oleobject">

    <PARAM NAME="URL" VALUE="你的文件地址">
    <PARAM NAME="SendPlayStateChangeEvents" VALUE="True">
    <PARAM NAME="AutoStart" VALUE="True">
    <PARAM name="uiMode" value="none">
    <PARAM name="PlayCount" value="9999">
    </OBJECT>
      

  2.   

    var S= '<object id="mediaPlayer" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"'
             + 'width="' + width + '" height="' + height + '"'       + 'codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"'
             + 'standby="Loading Microsoft Windows Media Player components..."'
             + 'type="application/x-oleobject">'
             + '   <param name="autoStart" value="false"/>'
             + '   <param name="url"       value="' + videolink + '" />'
             + '   <param name="wmode"     value="transparent" />'
             + '   <param name="uiMode"    value="full" />'
             + '   <param name="loop"      value="false" />'
             + '   <embed id       ="EmbedmediaPlayer"'
             + '       type        ="application/x-mplayer2"'
             + '       src         ="' + videolink + '"'
             + '       width       ="' + width + '"'
             + '       height      ="' + height + '">'
             + '   </embed>'
             + '</object>';
        document.write(S);
    自定义activex控件