在 C# ShockWave 组件上调用 Play() 不会启动 YouTube 视频播放?



我有一个简单的WinForms C#应用程序,它在窗体上嵌入了ShockWave COM组件。当我点击按钮时,什么也没发生。YouTube播放器在ShockWave组件中清晰可见,视频静止,播放器镀铬在框架中,上面有一个大的"播放"按钮。但它并没有开始播放。

样本代码:

private void button1_Click(object sender, EventArgs e)
{
    axShockwaveFlash1.Play();
}

有人知道怎么解决这个问题吗?我想知道这是否是因为ShockWave组件可能需要在play()方法工作之前清除"需要点击才能播放"或其他注册表/系统设置?如果碰巧是这种情况,那么我如何通过编程实现这一点,以便新安装能够完美运行,而不会让用户经历某种预先安装的麻烦?

对于Youtube视频AxShockwaveFlash对象Play()方法不起作用,但有一个很好的解决方法。

秘密是在包含您想要播放的视频的URL末尾添加?autoplay=1

这样的东西将提供所需的效果:

private void button1_Click(object sender, EventArgs e)
{
    string path = @"http://www.youtube.com/v/Q-h4ulFK2Ek?autoplay=1";
    axShockwaveFlash1.Load(0, path);
}

最新更新