Cef经典N大问题

1、cef启动、退出的时候怎么崩溃了
答:如果是启动时崩溃,请看资源目录是否文件都齐全.
退出的话见https://github.com/fanfeilong/cefutil/blob/master/doc/CEF_Close.md


如果是centos6.4 内核上跑CEF启动时候崩溃,原因是不支持一个uid有关的东西。启动时增加参数--disable-setuid-sandbox就OK了 


2、mp3怎么没声音
答:从chromium45版本后,chromium把ffpeme这个dll静态链接进dll了。同时因为版权的原因,没有带MP3的支持库。可以从群里下载别的网页编译好的cef,自带mp3。或者自己编译cef,见http://www.cnblogs.com/himax/p/how_to_build_cef3_on_windows.html
另外: 51版本的MP4,其实只要在chromium最开始gn args命令的记事本里面加上ffmpeg_branding=“Chrome” proprietary_codecs=ture就行了。官方文档,却说的是要用export命令加上编译宏 。


3、怎么让js c++交互
答:网上资料很多,看v8相关的接口就知道了。或者可以搜索brackets-shell-master的代码。那是个完整的cef使用案例,非常牛逼
(或者http://blog.csdn.net/foruok/article/details/50573612)


4、怎么播放flash
答:要加命令行和settings(http://blog.csdn.net/zx2356/article/details/51514403)
另外,chromium从49开始,把NPAPI相关代码全都删了。有几个头文件里,有几个NP_XX的结构体忘记删了,我还提了个
patch给chromium让他们删····



5、播放flash的时候怎么有黑框
答:ppapi的flash,在去掉sandbox后,运行就会有黑框,解决方案是hook flash内部的命令行相关的api。csdn上有个下载教你自己做
(http://blog.csdn.net/zx2356/article/details/51514403)


6、怎么让cef支持触屏
答:待续····


7、怎么关了cef console log
答:设置log的级别,api里有


8、右键菜单怎么屏蔽
答:有相关接口,自己找


9、怎么写cookies
有相关接口,自己找


10,怎么像ie那样操作dom
答:有相关接口,自己找.(比如 http://blog.csdn.net/foruok/article/details/50799518)


12、 为什么xp下运行不了
答:从chromium45开始,官方就宣布不支持xp了。不过实际到M50才不支持。可以自己改代码,去掉xp没有的api。大概10多处


13、 开启了--multi-threaded-message-loop 参数,cef2623版本的程序debug模式下退出会提示出错。
答:加command_line->AppendSwitch("--disable-extensions");
--disable-extensions试试

 

14,输入法位置不对的问题。

答:见http://blog.csdn.net/sunve_163/article/details/49994487

 

源码bug ,CEF(2272) 版本已做了修复,通过官网提供的修复记录,修改2171存在的问题。如果有cef(2171)源码可按照3步骤做修改,再编译成库文件。如果没有源码直接下载4 提供的下载地址下载编译好的cef库文件

 

15,flash我路径对了,命令行也没错,为什么加载不了?

 

答:要一开始就调用cef的initial函数,否则容易出现这种情况

 

16,为什么有时候cef加载很慢

答:可以添加command_line->AppendSwitch("no-proxy-server");关闭代理试试

 

17,如何开启flash

CEF3如何在系统不安装flash播放器的情况下,通过打包dll来播放flash?
1. 方法一:假如系统不安装flash播放器,就无法播放;
command_line->AppendSwitch("enable-npapi");
command_line->AppendSwitchWithValue("load-plugin", "plugins\npswf32.dll");
2. 方法二:假如系统不安装flash播放器,就无法播放;
command_line->AppendSwitchWithValue("ppapi-flash-version", "19.0.0.207");
command_line->AppendSwitchWithValue("register-pepper-plugins", "PepperFlash/pepflashplayer.dll;application/x-shockwave-flash");
3. 方法三:系统安装了flash播放器后,可以播放
command_line->AppendSwitch("—enable-system-flash");


友情链接:https://github.com/fanfeilong/cefutil/tree/master/doc

 

 

 

http://blog.csdn.net/qhh_qhh/article/details/50684443

 

 

在Windows下编译Cef3.2623并加入mp3、mp4支持(附带源码包和最终DLL) :http://blog.csdn.net/zhuhongshu/article/details/54193842
Cef2623源码包下载地址:http://pan.baidu.com/s/1jHY4hls
最终Dll下载地址(release、debug、x64):http://pan.baidu.com/s/1jIdTNme

MFC CEF3是一种集成了MFC框架和CEF3(Chromium Embedded Framework 3)的开发工具,用于构建桌面浏览器应用程序。然而,一些开发者在使用MFC CEF3时发现其内存消耗过大的问题。 造成MFC CEF3内存消耗过大的原因有几个方面。首先,CEF3本身是一个强大的开源项目,它集成了Web浏览器引擎,包含了大量的代码和资源,因此会占用一定的内存空间。其次,MFC框架本身对资源的管理并不完全透明,可能会导致一部份的内存泄漏。另外,一些开发者在使用MFC CEF3时可能会过度使用资源,例如同时加载大量的网页、使用大量的JavaScript等,这也会导致内存消耗的增加。 为了降低MFC CEF3的内存消耗,开发者可以采取以下措施: 1. 监控和管理内存:开发者可以通过监视和分析应用程序的内存占用情况,找出内存泄漏和内存占用过高的原因,并进行相应的优化。 2. 控制资源使用:开发者应该尽可能避免同时加载大量的网页或使用大量的JavaScript,合理分配资源,避免资源浪费和内存占用过高。 3. 及时释放资源:开发者在不需要使用MFC CEF3的时候,应该及时释放资源,以减少内存占用。例如,在程序退出时,要确保释放所有的CEF3资源。 4. 更新和优化代码:开发者可以关注CEF3的官方更新和文档,了解最新的性能优化方法,并进行相应的代码优化。 综上所述,MFC CEF3消耗内存过大可能是由于CEF3本身的资源占用和开发者在使用过程中的一些问题造成的。通过监控和管理内存、控制资源使用、及时释放资源以及代码优化,开发者可以有效降低MFC CEF3的内存消耗。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值