CEF3笔记

嵌入应用程序的时候,使用CefRunMessageLoop会阻塞进程,设置CefSettings.multi_threaded_message_loop = true(仅限windows下使用),这将导致CEF运行在浏览器UI线程,该UI线程是从主应用程序分离出来的线程

CEF有多个进程:

render进程

plugin进程

GPU进程

ETC进程

CefEnableHighDPISupport()

windows7或者更高版本系统中,在进程启动时设置High-DPI为启用状态。而低版本的windows系统对DirectWrite和DPI支持不好(设置这个不会有什么作用)

如果出现打开的网页不能填满窗口的问题,要么不要使用CefEnableHighDPISupport()这个接口函数,要么去设置网页的缩放比例。

设置网页的缩放大小使用SetZoomLevel(double zoomLevel)这个函数,执行渲染之前,在UI线程中,使用这个函数重置缩放比例,可以立即生效

CefExecuteProcess()

启动多进程,多进程模式下,如果配置不正确,会出现程序不加载网页,出现多个对话框

如果是子进程,这里会返回,不会在执行下面的代码,所以创建自己的窗口一定要在此函数调用之后创建,这样不会在子进程再执行一次创建。

URL加载不出来的问题:
属性->生成事件->命令行
setlocal
mt.exe -nologo -manifest "$(OutDir)xxx.exe.manifest" "$(OutDir)compatibility.manifest" -outputresource:"$(OutDir)xxx.exe";#1
if %errorlevel% neq 0 goto :cmEnd
:cmEnd
endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
:cmErrorLevel
exit /b %1
:cmDone
if %errorlevel% neq 0 goto :VCEnd
原因:https://docs.microsoft.com/zh-cn/windows/win32/sysinfo/targeting-your-application-at-windows-8-1

CefSharp是一个开源的.NET封装库,用于集成Chromium浏览器到.NET应用程序中。要修改浏览器指纹,我们可以通过CefSharp来实现。 首先,我们需要了解浏览器指纹是什么。浏览器指纹是通过浏览器提供的信息(例如用户代理、插件列表、操作系统等)来识别和区分不同的浏览器。为了修改浏览器指纹,我们需要修改这些信息。 在CefSharp中,我们可以通过修改浏览器的用户代理来改变指纹。用户代理是浏览器在发送HTTP请求时提供给服务器的一个字符串,其中包含了浏览器的相关信息。 要修改用户代理,在创建CefSharp浏览器实例之前,我们可以通过CefSettings类来设置用户代理。例如,我们可以使用如下代码将用户代理设置为指定的值: ```csharp CefSettings settings = new CefSettings(); settings.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36"; Cef.Initialize(settings); ``` 在上述代码中,我们将用户代理设置为Chrome 89的用户代理字符串。这样,在使用CefSharp浏览器进行网络请求时,服务器将根据用户代理来判断浏览器类型。 除了修改用户代理,我们还可以通过修改其他浏览器参数来改变指纹,例如修改插件列表、操作系统等。 总结来说,要修改CefSharp浏览器的指纹,我们需要通过设置用户代理或修改其他参数来改变浏览器提供的信息。这样可以使浏览器产生一个与原始指纹不同的指纹,从而实现修改浏览器指纹的目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值