在C#ShockWave组件上调用Play()无法启动YouTubevideo播放?

我有一个简单的WinForms C#应用程序,它在表单上嵌入了ShockWave COM组件。 我有一个测试按钮,单击该按钮,调用组件上的Play()方法。 当我点击按钮时没有任何反应。 在ShockWave组件中,YouTube播放器清晰可见,video静止,帧中有播放器镶边,上面有一个很大的播放按钮。 但它没有开始播放。

示例代码:

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

有谁知道如何解决这一问题? 我想知道是不是因为ShockWave组件可能需要在Play()方法工作之前清除“需要点击播放”或其他一些注册表/系统设置? 如果恰好是这种情况,那么我该如何以编程方式执行此操作以便新安装完美运行而不会让用户通过某种预先设置的麻烦?

使用YoutubevideoAxShockwaveFlash对象Play()方法不起作用,但是,有一个很好的解决方法。

秘诀是将?autoplay=1添加到包含您要播放的video的URL的末尾。

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

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