CefSharp 集成谷歌浏览器详解(三)--官网示例解析2 CefSettings 介绍

本章节介绍CefSetting各种设置

CefExample.Init(osr: false, multiThreadedMessageLoop: multiThreadedMessageLoop, browserProcessHandler: browserProcessHandler);

这个方法就是Cef的初始化设置。里面有一些设置是已经注释的,每项设置我也没有详细研究,感兴趣的朋友可以自己看看代码和注释。这里我只说说几个比较重要的设置。

//设置语言环境是中文环境
settings.Locale = "zh_CN";
//远程调试端口
settings.RemoteDebuggingPort = 8088;
//浏览器缓存的路径,可以设置到某个磁盘,默认设置是在软件运行目录下面。
settings.CachePath = "cache";
//让浏览器的消息循环在一个单独的线程中执行,建议设置成true,具体含义看看浏览器消息处理。
settings.MultiThreadedMessageLoop = true;
//这个我理解不到,只有看源码的注释;
settings.ExternalMessagePump = false;
 //获取本机internet代理设置。
        var proxy = ProxyConfig.GetProxyInformation();
        switch (proxy.AccessType)
        {
            case InternetOpenType.Direct:
            {
                //Don't use a proxy server, always make direct connections.
                settings.CefCommandLineArgs.Add("no-proxy-server", "1");
                break;
            }
            case InternetOpenType.Proxy:
            {
                settings.CefCommandLineArgs.Add("proxy-server", proxy.ProxyAddress);
                break;
            }
            case InternetOpenType.PreConfig:
            {
                settings.CefCommandLineArgs.Add("proxy-auto-detect", "1");
                break;
            }
        }
        //直接注释掉,因为这个应用程序已经包含在工程目录下面
        //settings.BrowserSubprocessPath = "..\\..\\..\\..\\CefSharp.BrowserSubprocess\\bin\\" + architecture + "\\Debug\\CefSharp.BrowserSubprocess.exe";
        //注册custom的域名,程序内部资源访问域名。
        //custom://cefsharp/zpy.html这种域名注册,后续注册https和test都是使用这种方式,zpy.html就是我自己加载在项目内的html文件。可以使用这种方式用本地html开发图形界面。模糊B/S程序和C/S程序。
                    settings.RegisterScheme(new CefCustomScheme
        {
            SchemeName = CefSharpSchemeHandlerFactory.SchemeName,
            SchemeHandlerFactory = new CefSharpSchemeHandlerFactory(),
            IsSecure = true //treated with the same security rules as those applied to "https" URLs
            //SchemeHandlerFactory = new InMemorySchemeAndResourceHandlerFactory()
        });
        //在设置最后使用Cef.AddCrossOriginWhitelistEntry(BaseUrl, "https", "cefsharp.com", false);这些域名添加到白名单。

做完这些以后并且设置好ChromiumWebBrowser后就可以使用Application.Run(browser);启动浏览器。

下一章我们主要介绍ChromiumWebBrowser的Handler配置。

上一章:CefSharp 集成谷歌浏览器详解(二)从Program.cs开始

下一章:CefSharp 集成谷歌浏览器详解(四)–官网示例解析3 RegisterJsObject CefSharpSchemeHandlerFactory

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章