精易论坛

标题: My-E-CEF3[4044] 1.05单进程模式的回归和zc函数问题的解决 [打印本页]

作者: 逆風飛翔的瘋狂    时间: 2020-7-15 16:46
标题: My-E-CEF3[4044] 1.05单进程模式的回归和zc函数问题的解决
本帖最后由 逆風飛翔的瘋狂 于 2020-7-16 14:37 编辑

zc函数效果图:

zc函数测试网页代码


zc函数代码


多进程模式演示


单进程模式演示


详细说明:(文字有点多,但如果你要用我建议你看完)
1.CEF3_zc函数使用说明
1)zc函数原理实际在支持库中的OnContextCreated(易模块里面是:_浏览器_脚本引擎创建完毕_)中实现的,而OnContextCreated函数在多进程模式下是由子进程调用,所以主进程断点是没用的,vs下可以用附加模式下才能调试,所以CEF3_zc函数最好是在单进程模式下实现
2)多进程模式下想实现zc函数,CEF3_zc函数必须写在事件中,建议写在“_浏览器_启动程序_”里面,这样zc函数才会生效,否则子进程不会执行,因为子进程在你初始化的时候就exit了 ,而不会在往下执行;理论上写在子进程初始化前面也可以,但我没试过,有兴趣可以试试,其实说这么多,简单一句就是zc函数要在OnContextCreated执行前面!
3)使用我用C++编译的“kernel.exe”是无法使用CEF3_zc函数,如果上面描述你看懂了,不用说原因你也知道为什么,因为子进程“kernel.exe中并没有CEF3_zc函数的功能,在主进程里面实现也不会传递给子进程,要传递就只有用我之前帖子所说的进程间通信或内存共享了!所以此处要不你用自己的执行程序做子进程,要不去改kernel.exe的源码!
PS:如果上面看晕了,没看懂,可以百dChromium 内核单进程和多进程模式的区别,这里我就不多说了,累


2.单进程模式实现原理
其实超简单,简单得我不想说,之前没实现只能怪我转牛角尖,新版内核取消single_process设置后,我一直在想有没有其他地方可以设置,一直在初始化这里绕圈,缺忽略了CefCommandLine这东西,一句command_line->AppendSwitchWithValue("--single-process", "true")就搞定了单进程模式;而在易模块里面只要不设置执行进程则默认启动单进程模式,详见代码,我这就不多说了,说多了都是泪

最后在补充说明:如果以上有什么描述错误,大神勿笑
,打字也累!
1.模块编译我用了模块加固,如果你没有模块加固把源代码重新编译一下就行了,源码都有,问我这个的人太多了,真心累!

2.单进程模式并不稳定,本这就是被抛弃的东西(有兴趣你可以去CEF官网和chrome官网了解),如果你用来做浏览器或者播放器建议你不要用单进程模式,现在已知的问题是单进程模式下播放视频会崩溃!


更新日志及说明(详见附件)
申明:本功能是在黑猫《E(CEF3++) Template Library》3203 1.32基础上修改
支持原作者的同时,遵循原CEF(Chromium Embedded Framework 3 Builds)的开源协yi
修改人:ベ時間の加速度&奔跑ミ
联系QQ:详见附件
——————————————————————————————————————————————————
15:48 2020/7/15 《My-E-CEF3[4044] 1.05》
单进程模式的回归,zc函数问题的解决
一.内核支持变更
1.ElibApp添加singleprocess私有变量和setsingleprocess方法用于单进程模式的实现;
二、模块变更
1.恢复“CEF3_zc函数”“CEF3_取参数数量”“CEF3_取逻辑型值”“CEF3_取整数型值”“CEF3_取小数型值”“CEF3_取文本型值”“CEF3_置逻辑型返回值”“CEF3_置整数型返回值”“CEF3_置小数型返回值”“CEF3_置文本型返回值”功能;
三、发现问题

四、解决问题
1.无法使用单进程模式;
2.zc函数无法使用;

下载地址:
修改说明及记录.txt (7.98 KB, 下载次数: 2) 下载地址.txt (134 Bytes, 下载次数: 69)

以前版本说明帖:
My-E-CEF3[4044] 1.04更新添加网页静音功能,和网页全屏功能,和部分功能取消
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14598009

(出处: 精易论坛)


My-E-CEF3[4044] 1.03更新添加右键菜单功能,添加证书错误回调,添加查找当前网页功能
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14588349
(出处: 精易论坛)

My-E-CEF3[4044] 1.02更新Chromium内核版本为81.0.4044.138 添加MP3/MP4支持
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14581405
(出处: 精易论坛)

My-E-CEF3[4044] 1.00更新Chromium内核版本为81.0.4044.113 支持下载回调
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14575521
(出处: 精易论坛)

My-E-CEF3[3203] 1.32(改版-添加下载回调)
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14571839
(出处: 精易论坛)













补充内容 (2020-7-30 09:06):
交流群:559152068
群内有最新版稳定版


补充内容 (2020-9-15 11:10):
最新版本2.05增加浏览器设置、独立缓存和代理功能,下载地址:
链接1:  https://pan.baidu.com/s/1k0SP99evnJBIMMbN3d2Uag 提取码:goo5
链接2:https://share.weiyun.com/joa1Z8PE 密码:dgvdcg
交流群:559152068

补充内容 (2021-2-8 10:26):
最新版新框架新模式:
FBrowesCEF3lib模块版发布采用Chromium81.0.4044.138更稳定功能更多
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14659055

作者: sunmoonstar    时间: 2020-7-15 19:12
有zc函数必须顶
作者: yoobaby    时间: 2020-7-15 19:39

作者: a019872140    时间: 2020-7-15 20:13
这是什么错误

作者: a019872140    时间: 2020-7-15 20:23
这个到底是什么错误这个DLL不是win系统自带的么???????

作者: Beautiful    时间: 2020-7-18 07:29
留个脚印,以前zc函数一直没有效果,原来是这个情况。。
作者: 已注销622479    时间: 2020-7-18 22:40
牛哦
作者: chjchlove    时间: 2020-7-26 03:12
21131313113131031103
作者: iuseits    时间: 2020-7-29 08:32
留个脚印
作者: 逆風飛翔的瘋狂    时间: 2020-9-15 11:03
最新版本2.05增加浏览器设置、独立缓存和代理功能,最新下载地址:
链接1:  https://pan.baidu.com/s/1k0SP99evnJBIMMbN3d2Uag 提取码:goo5
链接2:https://share.weiyun.com/joa1Z8PE 密码:dgvdcg
交流群:559152068
作者: ovkkriyk    时间: 2023-10-8 18:23
看一看反反复复反反复复凤飞飞
作者: ovkkriyk    时间: 2023-10-8 18:24
学习看看




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4