【问题标题】:Cannot play any YouTube videos in C# WebBrowser无法在 C# WebBrowser 中播放任何 YouTube 视频
【发布时间】:2016-04-06 23:01:54
【问题描述】:

我正在使用 C#.NET(Windows 窗体)在 Windows 7 64 位上开发一个轻量级桌面应用程序,它可以搜索和播放 YouTube 视频。

我整夜都在试图让应用以所有可能的方式播放视频(我尝试过 WebBrowser 和 Shockwave ActiveX Control),但我无法在应用中播放任何视频,除了如果我强制 WebBrowser 通过 URL https://www.youtube.com/watch?v={VIDEO_ID} 导航到完整的 YouTube 视频页面。

我真正想要的是能够仅将播放器本身嵌入 WebBrowser,而不是整个 YT 视频页面。到目前为止,这是我尝试过的:

确实有效,但不是我需要的:

WebBrowser.Navigate("https://www.youtube.com/watch?v=" + video.Id);

不起作用:

WebBrowser.Navigate("https://www.youtube.com/embed/" + video.Id);

Browser.Navigate("about:blank");
Browser.Document.OpenNew(true);

Browser.DocumentText =
    "<html><body>" +
        "<iframe width='420' height='315' src='https://www.youtube.com/embed/" + video.Id + "&html5=1' frameborder='0' allowfullscreen></iframe>" +
    "</body></html>";

Browser.DocumentText = 
    "<object width='640' height='390'>" +
        "<param name='movie' value='https://www.youtube.com/v/" + video.Id + "?version=3&autoplay=1'></param>" +
        "<param name='allowScriptAccess' value='always'></param>" +
        "<embed src='https://www.youtube.com/v/" + video.Id + "?version=3&autoplay=1' " +
            "type='application/x-shockwave-flash' allowscriptaccess='always' width='640' height='390'></embed>" +
    "</object>";

AxShockwaveCtl.GotoMovie("https://www.youtube.com/v/" + video.Id);
AxShockwaveCtl.Play();

AxVideo.SRC = "https://www.youtube.com/v/" + video.Id;
AxVideo.swURL = "https://www.youtube.com/v/" + video.Id;
AxVideo.Play();

我相信我也尝试了 WebBrowser.Document.Write 等其他东西,但没有任何效果。我在这里看到了关于这个问题的其他问题,但他们似乎最终都以某种方式解决了他们的问题,我试图做他们所做的,但在我的情况下没有任何效果。还尝试更改所有 Internet Explorer 设置。当我使用 IE 11 或 Chrome 等“完整”浏览器时,一切正常,但我的应用程序只显示一个黑色矩形,YouTube 视频应该在的位置。

【问题讨论】:

  • 看看this是否有帮助。

标签: c# flash youtube webbrowser-control shockwave


【解决方案1】:

问题来自最新的 Windows 更新。无法判断问题出在哪里,但故障出在闪光灯组件上。

因此,如果您强制在 html5 模式下播放 youtube 视频,它应该可以工作。 尝试关注

WebBrowser.Navigate("https://www.youtube.com/embed/" + video.Id + "?html5=1");

【讨论】:

  • 这仍然给了我一个黑色的矩形。
  • 仍然没有解决办法?
猜你喜欢
  • 2020-06-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-13
  • 2012-08-05
  • 1970-01-01
  • 1970-01-01
  • 2018-03-09
  • 2014-07-13
相关资源
最近更新 更多