CEF CefSettings 结构体 详解
1. single_process:
设置为ture时,browser和render使用同一个进程。Chromium 不正是支持此运行模式,并且不如默认的多进程稳定。
2. no_sandbox:
沙盒是在受限的安全环境中运行应用程序的一种做法,这种做法是要限制授予应用程序的代码访问权限。沙盒中的所有改动对操作系统不会造成任何损失。设置为ture(1) 以禁止子进程的沙箱。
3. multi_threaded_message_loop:
多线程消息循环,为false时,可以调用CefRunMessageLoop或者CefDoMessageLoopWork函数来触发Cef消息循环,这时浏览器进程的UI线程就是调用CefRunMessageLoop或者CefDoMessageLoopWork函数的线程。当为true时。浏览器进程的UI线程是另外的线程。设置multi_threaded_message_loop为true则使用多线程消息循环。一般默认为false,使用定时器进行事件触发CefDoMessageLoopWork来进行事件处理。(仅在windows上支持此选项)
4. external_message_pump:
设置为true(1)来控制浏览器进程主(UI)线程消息泵,通过CefBrowserProcessHandler :: OnScheduleMessagePumpWork()回调进行调度。如果必须将CEF消息循环集成到现有的应用程序消息循环中,建议将此选项与CefDoMessageLoopWork()函数结合使用。对于大多数用户,建议不要启用此选项;禁用此选项并使用 CefRunMessageLoop()函数或multi_threaded_message_loop(如果可能)。
5. windowless_rendering_enabled:
离屏渲染,需要在CefRenderHandler里实现OnPaint。设置为true(1)以启用无窗口(屏幕外)渲染支持。如果应用程序不使用无窗口渲染,请不要启用此值,它可能会降低某些系统上的渲染性能。
6. command_line_args_disabled:
cef3和chromium中的许多特性都可以用命令行参数来设置。这些参数使用”–some-argument[=optional-param]”的格式并通过CefExecuteProcess()和CefMainArgs结构体传递给cef。
禁用命令行参数,在调用CefInitialize()函数之前,将CefSettings.command_line_args_disabled设为true。
指定主应用程序的命令行参数,需要实现CefApp::OnBeforeCommandLineProcessing()方法。
指定传递给子进程的命令行参数,需要实现CefApp::OnBeforeCommandLineProcessing()方法。
7. persist_session_cookies:
在使用全局cookie管理器时,默认情况下, 要保持会话cookie(没有到期日期或有效期的间隔),将此值设置为true(1)。会话cookie通常是暂时的,大多数Web浏览器不会持久化。A | cache_path | 还必须指定值以启用此功能。也可以使用“persist-session-cookies”命令行开关进行配置。可以通过CefRequestContextSettings.persist_session_cookies值覆盖各个CefRequestContext实例。
8. persist_user_preferences:
将用户首选项作为JSON文件保存在缓存路径目录中将此值设置为true(1)。A | cache_path | 还必须指定以启用此功能。也可以使用“persist-user-preferences”命令行开关进行配置。可以通过 CefRequestContextSettings.persist_user_preferences值覆盖各个CefRequestContext实例。
9. log_severity :
此项设置日志级别。只有此等级、或者比此等级高的日志的才会被记录。此项可以通过命令行参数“log-severity”配置,可以设置的值为“verbose”,“info”,“warning”,“error”,“error-report”,“disable”。
10. pack_loading_disabled :
设置为true(1)以禁用资源和区域设置的包文件加载。如果禁用了包文件的加载,则必须为浏览器提供资源包处理程序并通过CefApp :: GetResourceBundleHandler()呈现进程。也可以使用“disable-pack-loading”命令 进行开关进行配置。
11.remote_debugging_port :
此项可以设置1024-65535之间的值,用于在指定端口开启远程调试。例如,如果设置的值为8080,远程调试的URL为http://localhost:8080。CEF或者Chrome浏览器能够调试CEF。此项也可以通过命令行参数“remote-debugging-port”配置。
12. uncaught_exception_stack_size :
捕获未捕获异常的堆栈跟踪帧数。指定一个正值以启用CefRenderProcessHandler::OnUncaughtException()回调。指定0(默认值)和不会调用OnUncaughtException()。也可以使用uncaught-exception-stack-size”命令行开关进行配置。
13. ignore_certificate_errors:
设置为true(1)以忽略与无效SSL证书相关的错误。启用此设置可能会导致潜在的安全漏洞,例如“中间人”攻击。从Internet 加载内容的应用程序不应启用此设置。也可以使用“ignore-certificate-errors”命令行开关进行配置。可以通过 CefRequestContextSettings.ignore_certificate_errors值覆盖各个CefRequestContext实例。
14. enable_net_security_expiration :
设置为true(1)以启用内置网络安全信息的日期到期(即证书透明度日志,HSTS预加载和固定信息)。启用此选项可提高网络安全性
15. background_color:
在加载文档之前和没有指定文档颜色时用于浏览器的背景颜色。alpha分量必须是完全不透明(0xFF)或完全透明(0x00)。如果alpha分量完全是不透明的,则RGB分量将用作背景颜色。如果 alpha组件对于窗口浏览器完全透明,则使用默认值opaque white。如果alpha组件对于无窗口(屏幕外)浏览器是完全透明的,那么将启用透明绘制
16. browser_subprocess_path:
设置用于启动子进程单独执行器的路径。(cefprocess.exe)。如果在windows上或者linux上为空,则使用祝金程的可执行文件。
17.framework_dir_path :
macOS上的cef目录路径。如果此值为空,那么狂姐必须存在于顶级应用程序包中。
18. cache_path :
设置磁盘上用于存放缓存数据的位置。如果为空则将以“隐身模式”创建浏览器,其中内存缓存用于存储,并且没有数据持久保存到磁盘。如果指定了缓存路径,则 localStorage 等HTML5数据库将仅在会话中保持不变。可以通过CefRequestContextSettings.cache_path值覆盖单个CefRequestContext实例。
19. user_data_path :
将拼写检查字典文件等用户数据存储在磁盘上的位置。如果为空,则将使用默认的特定于平台的用户数据目录(Linux上的“〜/ .cef_user_data”目录,
“Mac OS X上的〜/ Library / Application Support / CEF / User Data”目录,
Windows上用户“Local Settings\Application Data\CEF\User Data”目录)。
20. user_agent:
设置客户端标识,服务器可以识别是从哪里发来的请求。
21. product_version:
将作为默认User-Agent字符串的产品部分插入的值。如果为空,将使用Chromium产品版本。如果 | userAgent | 指定此值将被忽略。也可以配置使用“product-version”命令行开关。
22. locale :
此设置项将传递给Blink。如果此项为空,将使用默认值“en-US”。在Linux平台下此项被忽略,使用环境变量中的值,解析的依次顺序为:LANGUAE,LC_ALL,LC_MESSAGES和LANG。此项也可以通过命令行参数“lang”配置。
23. log_file :
此项设置的文件夹和文件名将用于输出debug日志。如果此项为空,默认的日志文件名为debug.log,位于应用程序所在的目录。此项也可以通过命令参数“log-file”配置。
24. javascript_flags :
初始化V8 JavaScript引擎时将使用的自定义标志。使用自定义标志的后果可能未经过充分测试。也使用“JS-标志”命令行开关//配置。
25. resources_dir_path :
此项设置资源文件夹的位置。如果此项为空,Windows平台下cef.pak、devtools_resourcs.pak、Mac OS X下的app bundle Resources目录必须位于组件目录。此项也可以通过命令行参数“resource-dir-path”配置。
26. locales_dir_path :
此项设置locale文件夹位置。如果此项为空,locale文件夹必须位于组件目录,在Mac OS X平台下此项被忽略,pak文件从app bundle Resources目录。此项也可以通过命令行参数“locales-dir-path”配置。
27. accept_language_list :
逗号分隔的有序语言代码列表,没有任何空格将在“Accept-Language”HTTP标头中使用。可以使用CefBrowserSettings.accept_language_list值在每个浏览器的基础上覆盖。如果两个值都为空,则使用“en-US,en”。可以通过CefRequestContextSettings.accept_language_list值覆盖各个CefRequestContext实例。
---------------------
原文:https://blog.csdn.net/xiezhongyuan07/article/details/84402083
https://magpcss.org/ceforum/apidocs3/projects/(default)/_cef_settings_t.html
CEF CefSettings 结构体 详解的更多相关文章
- NetBios 的结构体详解
[NetBios 的结构体详解] NetBIOS是早期的局域网传输协议. 1.结构体. 2.命令 NetBIOS命令的使用方式有两种,即等待和非等待(或称为同步与异步)方式. 如果命令码的高阶位是0时 ...
- Linux下DIR,dirent,stat等结构体详解
摘自:http://www.liweifan.com/2012/05/13/linux-system-function-files-operation/ 最近在看Linux下文件操作相关章节,遇到了这 ...
- Linux进程描述符task_struct结构体详解--Linux进程的管理与调度(一)【转】
Linux内核通过一个被称为进程描述符的task_struct结构体来管理进程,这个结构体包含了一个进程所需的所有信息.它定义在include/linux/sched.h文件中. 谈到task_str ...
- struct net_device网络设备结构体详解
转自:http://blog.csdn.net/viewsky11/article/details/53046787 在linux中使用struct net_device结构体来描述每一个网络设备.同 ...
- Linux下DIR,dirent,stat等结构体详解(转)
最近在看Linux下文件操作相关章节,遇到了这么几个结构体,被搞的晕乎乎的,今日有空,仔细研究了一下,受益匪浅. 首先说说DIR这一结构体,以下为DIR结构体的定义: struct __dirstre ...
- struct socket结构体详解
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://weiguozhihui.blog.51cto.com/3060615/15852 ...
- I2C初始化结构体详解
typedef struct { uint32_t I2C_ClockSpeed; /*设置SCL时钟频,此值不低于40000*/ uint16_t I2C_Mode; /* 指定工作模式,可选I2C ...
- NetBios 的结构体详解(网络控制块NCB)
对之前网络基础编程用到控制块NCB进行介绍(补充): 在Win32环境下,使用VC++6.0进行NetBIOS程序开发时, 需要用到nb30.h文件和netapi32.lib静态链接库.前者定义了Ne ...
- 【转】定时器、sigevent结构体详解
原文网址:http://blog.163.com/zheng_he_xiang/blog/static/18650532620116311020390/ 最强大的定时器接口来自POSIX时钟系列,其创 ...
随机推荐
- 【Spring Boot】Spring Boot之自定义拦截器
一.拦截器的作用 将通用的代码抽取出来,达到复用的效果.比如可以用来做日志记录.登录判断.权限校验等等 二.如何实现自定义拦截器 1)创建自定义拦截器类并实现HandlerInterceptor类 / ...
- 安装python工具
安装python编写工具 本篇幅只限于安装linux系统上. 想要实现linux程序在windows桌面上打开,需要在linux上打开X11forward和在windows上安装Xmanager ID ...
- 如何寻找sql注入漏洞?
1.sql注入是怎么产生的 2.如何寻找sql注入漏洞 在地址栏输入单双引号造成sql执行异常(get) post请求,在标题后输入单引号,造成sql执行异常.
- scrapy框架爬取糗妹妹网站妹子图分类的所有图片
爬取所有图片,一个页面的图片建一个文件夹.难点,图片中有不少.gif图片,需要重写下载规则, 创建scrapy项目 scrapy startproject qiumeimei 创建爬虫应用 cd qi ...
- python正则表达式(1)--特殊字符
正则表达式—特殊表达式含义 正则表达式的字母和数字表示他们自身,但多数字母和数字前加一个反斜杠时会拥有不同的含义. 下面列出了正则表达式模式语法中的特殊元素. 1.普通字符集 1) \w ...
- Thinkphp内核百度小程序输出接口
最近百度小程序比较火,自己站点用thinkphp打造的,所以写了这个Thinkphp的百度小程序输出接口,实现数据同步. 附上代码 <?php namespace app\article\con ...
- 【Selenium-WebDriver实战篇】基于java的selenium之验证码识别内容
==================================================================================================== ...
- php生成pdf,php+tcpdf生成pdf, php pdf插件
插件例子:https://tcpdf.org/examples/ 下载tcpdf插件: demo // Include the main TCPDF library (search for insta ...
- learning java 推回输入流
import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import ...
- learning java 处理流的用法
有点重定向使用的味道 import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.Pri ...