关于c#:在Windows窗体中嵌入flv(flash)播放器

关于c#:在Windows窗体中嵌入flv(flash)播放器

Embedding flv (flash) player in windows forms

我正在尝试在Windows窗体应用程序中从此处启动flv Flash播放器。 我目前可以正常播放1 .flv文件,但是我确实需要能够播放多个文件。 有没有人有使用此控件提供的播放列表的经验,或者有更好的方法来做到这一点?


我非常想将WebBrowser控件放在您的软件和flv之间,因为您将失去对flv的所有控制,并且不会获得有关其状态的任何有意义的通知。缺乏紧密的集成将导致非常差的用户体验。此处的博客文章介绍了如何通过COM嵌入Flash。


您能否让控件以您希望的方式在网页/浏览器中运行?如果是(并且问题出在winforms上,我只是将其嵌入到浏览器控件中。否则,我将直接作为创建者。


好吧,我发现自己需要做同样的事情,因为还没有明确的解决方案,所以我想我会提供我的。我最终要做的是:

1
2
3
4
5
6
7
8
9
10
11
//Load JWPlayer swf
axShockwaveFlash1.FlashVars ="autostart=true";
axShockwaveFlash1.ScaleMode = 0;
axShockwaveFlash1.LoadMovie(0, Directory.GetCurrentDirectory() + @"\\JWPlayer\\player.swf");
axShockwaveFlash1.Play();

//Play new flv
axShockwaveFlash1.CallFunction("<invoke name=\"sendEvent\" returntype=\"xml\">" +
   "<string>load</string><string>" +
    @"C:\\FLVFiles\\Example.flv" +
   "</string></arguments></invoke>");

我弄清楚这个问题的主要参考是:(请看最后一篇文章)
http://www.longtailvideo.com/support/forums/jw-player/bug-reports/8687/how-to-call-sendevent-from-c

我之所以这样说,主要是因为有一些可以称为人们可能感兴趣的其他事件的链接。


嗯,我也遇到了同样的问题。可能的原因是loadmovie方法似乎无法清除上一部电影。到目前为止,我还没有找到将新电影加载到同一Flash Player中的任何技术。


推荐阅读