★搜Asp.net★(www.soAsp.net),为专业技术文档网站。
包括Asp.net开发技术文档·C#开发技术文档·Access/SQL Server数据库开发技术文档·VB.NET开发技术文档。
还包括·项目实战经验总结·开发经验技巧总结·项目开发心得。
播放媒体文件_ASP.NET播放视频文件,开源代码

///C#中的媒体播放类   
  using   System;   
  namespace   ConfigTools   
  {   
  ///   <summary>   
  ///   PlayClass   的摘要说明。   
  ///原作CSDN,经本人稍加修改   
  ///   </summary>   
  public   class   PlayClass   
  {   
  public   PlayClass()   
  {   
      //   
      //   TOD   在此处添加构造函数逻辑   
      //   
  }   
  public   string   Play(string   url,int   width,int   height)   
  {   
      string   strTmp   =   url.ToLower();   
      if(strTmp.EndsWith(".wmv")||strTmp.EndsWith(".mp3")||strTmp.EndsWith(".wma")||strTmp.EndsWith(".avi")||strTmp.EndsWith(".asf")||strTmp.EndsWith(".mpg"))   
      {   
      return   wmv(url,width,   height);   
      }   
      else   if(strTmp.EndsWith(".mp3"))   
      {   
      return   mp3(url,width,height);   
      }   
      else   if(strTmp.EndsWith(".swf"))   
      {   
      return   swf(url,width,   height);   
      }   
      else   if(strTmp.EndsWith(".jpg")||strTmp.EndsWith(".gif"))   
      {   
      return   img(url,width,   height);   
      }     
      else   if(strTmp.EndsWith(".rm"))   
      {   
      return   rm(url,width,   height);   
      }   
    
      else   
      {   
      return   "数据错误";   
      }         
  }   
    
    
  ///   <summary>   
  ///   wmv格式文件播放   
  ///   </summary>   
  ///   <param   name="url"></param>   
  ///   <returns></returns>   
    
  private   string   wmv(string   url,   int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();         
    
      sb.Append("<object   id=\"WMPlay\"   style=\"WIDTH:   "+width+"px;height:"+height+"px\"   \n");   
      sb.Append("classid=\"CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6\"   type=application/x-oleobject   standby=\"Loading   Windows   Media   Player   components...\"");   
      sb.Append("codebase=\"downloads/mediaplayer9.0_cn.exe\"   VIEWASTEXT>\n");   
      sb.Append("<param   name=\"URL\"   value='"+url+"'>\n");   
      sb.Append("<param   name=\"controls\"   value=\"ControlPanel,StatusBa\">");   
      //<PARAM   NAME="CONTROLS"   VALUE="ControlPanel,StatusBar">   
      sb.Append("<param   name=\"hidden\"   value=\"1\">");   
      sb.Append("<param   name=\"ShowControls\"   VALUE=\"0\">");   
      sb.Append("<param   name=\"rate\"   value=\"1\">\n");   
      sb.Append("<param   name=\"balance\"   value=\"0\">\n");   
      sb.Append("<param   name=\"currentPosition\"   value=\"-1\">\n");   
      sb.Append("<param   name=\"defaultFrame\"   value=\"\">\n");   
      sb.Append("<param   name=\"playCount\"   value=\"100\">\n");   
      sb.Append("<param   name=\"autoStart\"   value=\"-1\">\n");   
      sb.Append("<param   name=\"currentMarker\"   value=\"0\">\n");   
      sb.Append("<param   name=\"invokeURLs\"   value=\"-1\">\n");   
      sb.Append("<param   name=\"baseURL\"   value=\"\">\n");   
      sb.Append("<param   name=\"volume\"   value=\"85\">\n");   
      sb.Append("<param   name=\"mute\"   value=\"0\">\n");   
      sb.Append("<param   name=\"uiMode\"   value=\"mini\">\n");   
      sb.Append("<param   name=\"stretchToFit\"   value=\"0\">\n");   
      sb.Append("<param   name=\"windowlessVideo\"   value=\"0\">\n");   
      sb.Append("<param   name=\"enabled\"   value=\"-1\">\n");   
      sb.Append("<param   name=\"enableContextMenu\"   value=\"false\">\n");   
      sb.Append("<param   name=\"fullScreen\"   value=\"0\">\n");   
      sb.Append("<param   name=\"SAMIStyle\"   value=\"\">\n");   
      sb.Append("<param   name=\"SAMILang\"   value=\"\">\n");   
      sb.Append("<param   name=\"SAMIFilename\"   value=\"\">\n");   
      sb.Append("<param   name=\"captioningID\"   value=\"\">\n");   
    
        
      sb.Append("</object><br>\n");   
    
      return   sb.ToString();   
  }   
    
  private   string   wma(string   url,int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
        
      sb.Append("<object   id=\"WMPlay\"   classid=\"clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95\"   style=\"Z-INDEX:   101;   LEFT:   40px;   WIDTH:   240px;   POSITION:   absolute;   TOP:   32px;   HEIGHT:   248px\"   >");     
      sb.Append("<param   name=\"Filename\"   value=\""+url+"\">");   
      sb.Append("<param   name=\"PlayCount\"   value=\"1\">");   
      sb.Append("<param   name=\"AutoStart\"   value=\"0\">");   
      sb.Append("<param   name=\"ClickToPlay\"   value=\"1\">");   
      //sb.Append("<param   name=\"DisplaySize\"   value=\"0\">");   
      sb.Append("<param   name=\"EnableFullScreen   Controls\"   value=\"1\">");   
      sb.Append("<param   name=\"ShowAudio   Controls\"   value=\"1\">");   
      sb.Append("<param   name=\"EnableContext   Menu\"   value=\"1\">");   
      sb.Append("<param   name=\"ShowDisplay\"   value=\"1\">");   
        
      sb.Append("</object>");   
    
      return   sb.ToString();   
    
  }   
  ///   <summary>   
  ///   avi格式文件播放   
  ///   </summary>   
  ///   <param   name="url"></param>   
  ///   <returns></returns>   
  private   string   avi(string   url,int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
        
      sb.Append("<object   id=\"WMPlay\"   width=\"400\"   height=\"200\"   border=\"0\"   classid=\"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA\">");   
      sb.Append("<param   name=\"ShowDisplay\"   value=\"0\">");   
      sb.Append("<param   name=\"ShowControls\"   value=\"1\">");   
      sb.Append("<param   name=\"AutoStart\"   value=\"1\">");   
      sb.Append("<param   name=\"AutoRewind\"   value=\"0\">");   
      sb.Append("<param   name=\"PlayCount\"   value=\"0\">");   
      sb.Append("<param   name=\"Appearance   value=\"0   value=\"\"\">");   
      sb.Append("<param   name=\"BorderStyle   value=\"0   value=\"\"\">");   
      sb.Append("<param   name=\"MovieWindowHeight\"   value=\"240\">");   
      sb.Append("<param   name=\"MovieWindowWidth\"   value=\"320\">");   
      sb.Append("<param   name=\"FileName\"   value=\""+url+"\">");   
      sb.Append("</object>");   
    
      return   sb.ToString();   
  }   
    
  private   string   mpg(string   url,int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
    
      sb.Append("<object   classid=\"clsid:05589FA1-C356-11CE-BF01-00AA0055595A\"   id=\"WMPlay\"   width=\"239\"   height=\"250\">");   
      sb.Append("<param   name=\"Filename\"   value=\""+url+"\"   valuetype=\"ref\">");   
      sb.Append("<param   name=\"Appearance\"   value=\"0\">");   
      sb.Append("<param   name=\"AutoStart\"   value=\"-1\">");   
      sb.Append("<param   name=\"AllowChangeDisplayMode\"   value=\"-1\">");   
      sb.Append("<param   name=\"AllowHideDisplay\"   value=\"0\">");   
      sb.Append("<param   name=\"AllowHideControls\"   value=\"-1\">");   
      sb.Append("<param   name=\"AutoRewind\"   value=\"-1\">");   
      sb.Append("<param   name=\"Balance\"   value=\"0\">");   
      sb.Append("<param   name=\"CurrentPosition\"   value=\"0\">");   
      sb.Append("<param   name=\"DisplayBackColor\"   value=\"0\">");   
      sb.Append("<param   name=\"DisplayForeColor\"   value=\"16777215\">");   
      sb.Append("<param   name=\"DisplayMode\"   value=\"0\">");   
      sb.Append("<param   name=\"Enabled\"   value=\"-1\">");   
      sb.Append("<param   name=\"EnableContextMenu\"   value=\"-1\">");   
      sb.Append("<param   name=\"EnablePositionControls\"   value=\"-1\">");   
      sb.Append("<param   name=\"EnableSelectionControls\"   value=\"0\">");   
      sb.Append("<param   name=\"EnableTracker\"   value=\"-1\">");   
        
      sb.Append("<param   name=\"FullScreenMode\"   value=\"0\">");   
      sb.Append("<param   name=\"MovieWindowSize\"   value=\"0\">");   
      sb.Append("<param   name=\"PlayCount\"   value=\"1\">");   
      sb.Append("<param   name=\"Rate\"   value=\"1\">");   
      sb.Append("<param   name=\"SelectionStart\"   value=\"-1\">");   
      sb.Append("<param   name=\"SelectionEnd\"   value=\"-1\">");   
      sb.Append("<param   name=\"ShowControls\"   value=\"-1\">");   
      sb.Append("<param   name=\"ShowDisplay\"   value=\"-1\">");   
      sb.Append("<param   name=\"ShowPositionControls\"   value=\"0\">");   
      sb.Append("<param   name=\"ShowTracker\"   value=\"-1\">");   
      sb.Append("<param   name=\"Volume\"   value=\"-480\">");   
      sb.Append("</object>");   
    
      return   sb.ToString();   
  }   
    
  private   string   rm(string   url,   int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
      sb.Append("<OBJECT   ID=\"WMPlay\"   codebase=\"downloads/RealPlayer10-5GOLD_cn0302.exe\"   CLASSID=\"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA\"   HEIGHT="+height+"   WIDTH="+width+">");   
      sb.Append("<param   name=\"SRC\"   value=\""+url+"\">");   
      //sb.Append("<param   name=\"_ExtentX\"   value=\"9313\">");   
      //sb.Append("<param   name=\"_ExtentY\"   value=\"7620\">");   
      sb.Append("<param   name=\"AUTOSTART\"   value=\"0\">");   
      sb.Append("<param   name=\"SHUFFLE\"   value=\"0\">");   
      sb.Append("<param   name=\"PREFETCH\"   value=\"0\">");   
      sb.Append("<param   name=\"NOLABELS\"   value=\"0\">");         
      sb.Append("<param   name=\"CONTROLS\"   value=\"ImageWindow,ControlPanel,statusbar\">");   
      sb.Append("<param   name=\"CONSOLE\"   value=\"Clip1\">");   
      sb.Append("<param   name=\"LOOP\"   value=\"0\">");   
      sb.Append("<param   name=\"NUMLOOP\"   value=\"0\">");   
      sb.Append("<param   name=\"CENTER\"   value=\"0\">");   
      sb.Append("<param   name=\"MAINTAINASPECT\"   value=\"0\">");   
      sb.Append("<param   name=\"BACKGROUNDCOLOR\"   value=\"#000000\">");   
      //sb.Append("<embed   SRC   type=\"audio/x-pn-realaudio-plugin\"   CONSOLE=\"Clip1\"   CONTROLS=\"ImageWindow\"   HEIGHT=\"250\"   WIDTH=\"354\"   AUTOSTART=\"false\">");   
      sb.Append("</OBJECT>");   
    
      return   sb.ToString();   
  }   
    
  private   string   swf(string   url,   int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
                    
    
      sb.Append("<OBJECT   codeBase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0\"   ");   
      sb.Append("   height=\""+height+"\"   width=\""+width+"\"   >");   
      sb.Append("<PARAM   NAME=\"FlashVars\"   VALUE=\"\">");   
      sb.Append("<PARAM   NAME=\"Movie\"   VALUE=\""+url+"\">");   
      sb.Append("<PARAM   NAME=\"Src\"   VALUE=\""+url+"\">");   
      sb.Append("<PARAM   NAME=\"WMode\"   VALUE=\"Window\">");   
      sb.Append("<PARAM   NAME=\"Play\"   VALUE=\"-1\">");   
      sb.Append("<PARAM   NAME=\"Loop\"   VALUE=\"-1\">");   
      sb.Append("<PARAM   NAME=\"Quality\"   VALUE=\"High\">");   
      sb.Append("<PARAM   NAME=\"SAlign\"   VALUE=\"\">");   
      sb.Append("<PARAM   NAME=\"Menu\"   VALUE=\"0\">");   
      sb.Append("<PARAM   NAME=\"Base\"   VALUE=\"\">");   
      sb.Append("<PARAM   NAME=\"AllowScriptAccess\"   VALUE=\"always\">");   
      sb.Append("<PARAM   NAME=\"Scale\"   VALUE=\"ShowAll\">");   
      sb.Append("<PARAM   NAME=\"DeviceFont\"   VALUE=\"0\">");   
      sb.Append("<PARAM   NAME=\"EmbedMovie\"   VALUE=\"0\">");   
      sb.Append("<PARAM   NAME=\"BGColor\"   VALUE=\"\">");   
      sb.Append("<PARAM   NAME=\"SWRemote\"   VALUE=\"\">");   
      sb.Append("<PARAM   NAME=\"MovieData\"   VALUE=\"\">");   
      sb.Append("<PARAM   NAME=\"SeamlessTabbing\"   VALUE=\"1\">");   
      sb.Append("<embed   src=\""+url+"\"   height=\""+height+"\"   width=\""+width+"\"   quality=\"high\"   pluginspage=\"http://www.macromedia.com/go/getflashplayer\"type=\"application/x-shockwave-flash\"   menu=\"false\">");   sb.Append("</embed>");   
      sb.Append("</OBJECT>");   
    
      return   sb.ToString();   
  }   
    
  private   string   mp3(string   url,int   width,int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
      sb.Append("<object   classid=\"WMPlay\"   codebase=\"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715\"   type=\"application/x-oleobject\"   width=\"   +   width   +   \"   height=\"   +   height   +   \"   hspace=\"0\"   standby=\"Loading   Microsoft   Windows   Media   Player   components...\"   id=\"NSPlay\">");   
        
      sb.Append("<param   name=\"AutoRewind\"   value=\"0\">");   
      sb.Append("<param   name=\"FileName\"   value=\"   +   url   +   \">");   
      sb.Append("<param   name=\"ShowControls\"   value=\"1\">");   
      sb.Append("<param   name=\"ShowPositionControls\"   value=\"0\">");   
      sb.Append("<param   name=\"ShowAudioControls\"   value=\"1\">");   
      sb.Append("<param   name=\"ShowTracker\"   value=\"0\">");   
      sb.Append("<param   name=\"ShowDisplay\"   value=\"0\">");   
      sb.Append("<param   name=\"ShowStatusBar\"   value=\"1\">");   
      sb.Append("<param   name=\"ShowGotoBar\"   value=\"0\">");   
      sb.Append("<param   name=\"ShowCaptioning\"   value=\"0\">");   
      sb.Append("<param   name=\"AutoStart\"   value=\"1\">");   
      sb.Append("<param   name=\"Volume\"   value=\"-2500\">");   
      sb.Append("<param   name=\"AnimationAtStart\"   value=\"0\">");   
      sb.Append("<param   name=\"TransparentAtStart\"   value=\"0\">");   
      sb.Append("<param   name=\"AllowChangeDisplaySize\"   value=\"0\">");   
      sb.Append("<param   name=\"AllowScan\"   value=\"0\">");   
      sb.Append("<param   name=\"EnableContextMenu\"   value=\"0\">");   
      sb.Append("<param   name=\"ClickToPlay\"   value=\"0\">");   
    
      sb.Append("</object>");   
      return   sb.ToString();   
    
  }   
    
  private   string   img(string   url,   int   width,   int   height)   
  {   
      System.Text.StringBuilder   sb   =   new   System.Text.StringBuilder();   
    
      sb.Append("<img   src=\""+url+"\"   height=\""+height+"\"   width=\""+width+"\"   border=\"0\">");   
      return   sb.ToString();   
  }   
  }   
    
    
  }   

==========================================================================

  用法:   
    

  ConfigTools.PlayClass   pc=new   ConfigTools.PlayClass();   
    
  Label1.Text=pc.Play("文件路径",高度,宽度);