如何在Windows应用程序C#上播放YouTubevideo

我已经创建了一个带有WebBrowser控件的Windows应用程序并尝试播放YouTubevideo..我已经安装了Adobe Shockwave Player,并试图在我的Windows应用程序上观看video,但它没有显示任何video。 当我点击播放按钮时,屏幕看起来像这样 在此处输入图像描述

我播放video的代码是

StreamWriter sw = new StreamWriter("utube.html"); string PlayString = currentVideoUrl.Trim().Replace("watch?v=", "v/"); string Finalplaycode = ""; sw.Write(Finalplaycode); sw.Close(); string PathToNavigate = Directory.GetParent(Application.ExecutablePath) + @"\utube.html"; webBrowser1.Navigate(PathToNavigate); 

我的示例video链接是: http : //www.youtube.com/watch?v = oZdnezj9Dfg&feature = BF&list = PLD3E900BFF6534896 &lf = plpp_video

有谁可以帮我解决这个问题? 我错过了任何插件吗? 我正在使用.NetFramework 4.0

我看到的一个问题是你没有引用嵌入中的参数。 您的嵌入将生成为:

  

您需要引用这些参数:

  

例如,这是一个适用于我的网站的嵌入:

  

您可能有兴趣阅读官方YouTube文档。 他们已经不再使用嵌入,而是使用iframe。 这使得他们可以使用HTML5video播放器(如果可用),或以其他方式回归Flash。 有关详细信息,请参阅http://www.google.com/support/youtube/bin/answer.py?answer=171780 。

更新:

下面的HTML文件以两种方式嵌入相同的video:一次使用iframe,一次使用标准嵌入。 当我使用WebBrowser控件导航到它时,它可以找到:

           

尝试复制并在应用程序中导航到它。 确保您的程序正在创建嵌入。

此外,如果已安装Flash,则可以删除外部标记。 然后,Flash嵌入看起来就像我最初显示的那样。

而且,并不要求你有HTML包装器。 如果我只包含没有和其他标签的嵌入,它工作正常。