2009-02-24 80 views
0

我正在尝试为嵌入了swf对象的Flow Player flv播放器执行ASP.net自定义控件。随着Steve Orr Controls我了解到,你可以嵌入JavaScript文件并注册它们,所以你不必总是手动添加JavaScript文件。我想知道这是否适用于SWF文件。在ASP中嵌入资源SWF Flash视频播放器?

我一直在读网络,我想弄清楚我是否疯狂寻找不能做的事情?或者,也许我假设我可以让这个XXYYWW122313的URL有用?

我收到了网址,但是当我尝试按照流程员网站的说明在呈现的< A>标签中显示视频时。此外,我一直在研究其他可用的flv播放器,但问题仍然是如何嵌入swf flash视频播放器和使用webresource url。

总之我做的是以下几点:

Imports System.Web 
    Imports System.Web.UI 
    Imports System.Web.UI.WebControls 
    Imports System.ComponentModel 
<DefaultProperty("FlowPlayer"), ToolboxData("<{0}:FlowManHlp runat=server></{0}:FlowManHlp>")> _ 
Public Class FlowManHlp 
    Inherits Control 

    Private flowPlayerPath As String 
    Private flowPlayerJSPath As String 



    Protected Overrides Sub OnPreRender(ByVal e As System.EventArgs) 
     MyBase.OnPreRender(e) 

     If Me.DesignMode Then Exit Sub 

     Dim rstype As Type = Me.GetType 
     Dim rsname As String = "FlowMan_Helper.Resources.flowplayer-3.0.5.min.js" 

     ' Register the client resource with the page. 
     Dim cs As ClientScriptManager = Page.ClientScript 
     cs.RegisterClientScriptResource(rstype, rsname) 
     'cs.RegisterClientScriptResource(rstype, "FlowMan_Helper.Resources.flowplayer-3.0.5.swf") 


    End Sub 

    Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter) 
     Dim htmlwrite As New System.Text.StringBuilder() 
     htmlwrite.Append("<a href=""http://blip.tv/file/get/KimAronson-TwentySeconds73213.flv""") 
     htmlwrite.Append(" Style = ""display:block;width:400px;height:300px""") 
     htmlwrite.Append(" id=""player""></a>") 

     htmlwrite.Append(vbCrLf & "<script>") 
     htmlwrite.Append(vbCrLf & "flowplayer(""player"", """ & flowPlayerPath & """);") 
     htmlwrite.Append(vbCrLf & "</script>") 
     htmlwrite.Append(vbCrLf & "<script>") 
     htmlwrite.Append(vbCrLf & "HelloWorld();") 
     htmlwrite.Append(vbCrLf & "</script>") 

     '  <script> 
     ' flowplayer("player", "../flowplayer-3.0.5.swf"); 
     '</script> 
     writer.Write(htmlwrite.ToString()) 
    End Sub 

    Private Sub FlowManHlp_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init 
     flowPlayerPath = Page.ClientScript.GetWebResourceUrl(Me.GetType(), "FlowMan_Helper.Resources.flowplayer-3.0.5.swf") 
     flowPlayerJSPath = Page.ClientScript.GetWebResourceUrl(Me.GetType(), "FlowMan_Helper.Resources.flowplayer-3.0.5.min.js") 

     flowPlayerPath = ResolveClientUrl(flowPlayerPath) 

    End Sub 

回答

1

您是否确定将嵌入式资源标记为解决方案的“嵌入式资源”,以便将其与编译后的代码捆绑在一起?

另外,切换到WebResource而不是ScriptResource。

谷歌搜索也有很多教程。尝试Understanding ScriptResource and WebResource in ASP.NET

+0

好吧,我会试试这个,并告诉你结果。谢谢你的帮助。 – ThorDivDev 2009-03-19 17:56:42

0

我发现的是,它可以因为人http://www.aspnetflash.com/完成当您拖放到网站领域它不添加单独的swf文件。我决定改用他们的工具。我尝试了JW Player和FlowPlayer,并且还有另一个SWF支架。当我在ASP网页中使用它们时,它总是空白,每条路径都正确设置。我还将MIME类型添加到IIS服务器和默认网站。我尝试了一些网站上提到的HTTP处理程序FlashSomething,但没有运气。