代码之家  ›  专栏  ›  技术社区  ›  Matt Warren

在windows窗体中嵌入flv(flash)播放器

  •  2
  • Matt Warren  · 技术社区  · 16 年前

    from here 在windows窗体应用程序中。我目前有它播放1.flv文件没有问题,但我真的需要能够播放多个文件。有没有人使用过此控件提供的播放列表,或者有没有更好的方法?

    4 回复  |  直到 16 年前
        1
  •  4
  •   Luke    16 年前

    我会非常犹豫是否将WebBrowser控件放在您的软件和flv之间,因为您将失去对flv的所有控制,并且不会收到任何关于其状态的有意义的通知。缺乏紧密集成将导致非常差的用户体验。博文 here 有关于通过COM嵌入flash的说明。

        2
  •  1
  •   Matthias Winkelmann    16 年前

    你能让控件以你想要的方式在网页/浏览器中运行吗?如果是(问题在于winforms,我只会将其嵌入浏览器控件中。如果不是,我会直接作为创建者。

        3
  •  0
  •   Zen    15 年前

    嗯,我也遇到了同样的问题。问题是loadmovie方法似乎无法清除最后一部电影。到目前为止,我还没有找到任何技术将新电影加载到同一个flash播放器中。

        4
  •  0
  •   Jas Laferriere    12 年前

    我发现自己也需要做同样的事情,因为还没有明确的解决方案,我想我会提供我的解决方案。下面是我最后做的:

    //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\">" + 
        "<arguments><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

    我之所以提到这一点,主要是因为有一些链接指向人们可能感兴趣的其他事件。