webbrowser 播放不了 flash flash plugin failed to load

问题描述 : 需要在wpf程序下使用webbrowser打开网页播放视频,但视频在程序中播放时提示flash plugin failed to load,

但是在相同环境的系统下ie浏览器是可以打开的

环境:.net版本4.6.1 webbrowser ie11

问题分析 : 浏览器内核,浏览器安全设置,环境

原因:

当通过脚本动态地尝试使用外部接口显示缓存的.swf应用程序时,会发生此问题。所以,另一个快速repro将是以下(从Adobe错误报告复制):

  1. 使用嵌入式WebBrowser控件创建一个C#应用程序。
  2. 加载没有内容的HTML页面。
  3. 通过JavaScript,通过对象标签添加一个带有外部接口的SWF。(在这一点上,我看到服务器流量,请求SWF。)
  4. 从JavaScript访问SWF的外部接口。行得通。
  5. 浏览到第二个网页。
  6. 回到空的一个。
  7. 通过JavaScript,再次添加SWF。无法联系外部接口。(没有服务器流量,表示SWF已被缓存。)

解决方案:

        private void ClearCachedSWFFiles()
        {
            try
            {
                var cachefolder = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) +
                              "\\Microsoft\\Windows\\INetCache\\IE";
                var dirinfo = new DirectoryInfo(cachefolder);
                foreach (var directoryInfo in dirinfo.GetDirectories())
                {
                    foreach (var fileInfo in directoryInfo.GetFiles("*.swf"))
                    {
                        fileInfo.Delete();
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
在每次 启动控件并使用闪存激活的内容加载页面时从IE 清除swf文件


你可能感兴趣的:(问题处理)