如何使CEF支持Flash


方法一:復制Chrome瀏覽器下的pepperFlash,通過cef命令行參數設置路徑。

        public Form1()
        {
            InitializeComponent();
            InitializeChromium();
        }

        private void InitializeChromium()
        {
            ChromiumWebBrowser.OnBeforeCfxInitialize += ChromiumWebBrowser_OnBeforeCfxInitialize;
            ChromiumWebBrowser.OnBeforeCommandLineProcessing += ChromiumWebBrowser_OnBeforeCommandLineProcessing;
            ChromiumWebBrowser.Initialize();

            ChromiumWebBrowser wb = new ChromiumWebBrowser();
            wb.Dock = DockStyle.Fill;
            wb.Parent = this;
            wb.LoadUrl("chrome://version");
        }

        void ChromiumWebBrowser_OnBeforeCommandLineProcessing(Chromium.Event.CfxOnBeforeCommandLineProcessingEventArgs e)
        {
            e.CommandLine.AppendSwitch("--disable-web-security");//關閉同源策略
            e.CommandLine.AppendSwitchWithValue("ppapi-flash-version", "18.0.0.209");//PepperFlash\manifest.json中的version
            e.CommandLine.AppendSwitchWithValue("ppapi-flash-path", "PepperFlash\\pepflashplayer.dll");
        }

        void ChromiumWebBrowser_OnBeforeCfxInitialize(Chromium.WebBrowser.Event.OnBeforeCfxInitializeEventArgs e)
        {
            e.Settings.CachePath = "Session";
            e.Settings.Locale = "zh-CN";
        }

方法二:通過命令行參數設置cef使用系統安裝的flash

        void ChromiumWebBrowser_OnBeforeCommandLineProcessing(Chromium.Event.CfxOnBeforeCommandLineProcessingEventArgs e)
        {
            e.CommandLine.AppendSwitch("--disable-web-security");//關閉同源策略
            e.CommandLine.AppendSwitch("--enable-system-flash");//使用系統flash
        }

 

參考:https://bitbucket.org/chromiumembedded/cef/issues/1586/add-pepper-flash-plugin-support


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM