第1篇:.NET多种WebKit内核/Blink内核浏览器初步测评报告

本文转自“吾乐吧软件站”,原文链接:http://www.wuleba.com/?p=23590

报告研究时间:2013-10-29——2013-11-04

报告结论意见:Xilium.CefGlue 是最好的.NET WebKit内核浏览器,用它来做二次发开效果是最好的!

感兴趣的,可以加入:WebKit/Blink 内核浏览器开发 QQ交流群:244840771

开发语言为:.NET/C++ 方向

第2篇:Xilium CefGlue 关于 CLR Object 与 JS 交互类库封装报告:导航篇

星级 名称 语言 版本 优点 缺点

★★ Chromium Embedded Framework (CEF) C/C++ 3.1547.1406
1、开源项目,有社区支持 1、C++更新维护成本太高
2、一直都还在更新维护 2、开发难度较大
3、基于CEF二次开发项目多

★★★★ Xilium.CefGlue C# 3.1547.1448
1、基于CEF,DotNET封装 1、参考资料较少
2、继承CEF优良特性 2、可能有些大坑,需要自己解决
3、无需安装多余组件,直接可用 3、已知JS调C#方法,但方法很繁琐
4、CSS3、JS、HTML5 效率高
5、已成功封装类库 Binding’s CLR Object

★★★☆ CefSharp C# 1.25.5
1、基于CEF,DotNET封装 1、要求手动安装VC2012组件
2、继承CEF优良特性 2、此项目是C++与C#混合开发
3、可以实现JS回调C#方法 3、网页加载中关闭,进程不退出
4、CLR OBJ 与 JS 交互非常强 4、CSS3与JS效率比CefGlue略低
5、官方提供的资料比较有用

★ O.N.E C#/VB.NET/DELPHI/C++ 534.x
1、官方提供一定文档资料 1、收费
2、内核、开发语言较全 2、主要是VC资料,C#较少

☆ Node-Webkit C++/JS/HTML5 0.8.0
1、跨平台 1、资料极少
2、用Web技术编写桌面应用 2、学习成本极高,与项目不符

★★ WebKit.NET C# 0.5
1、很多资料都是基于这个开发 1、作者已在2010年停止更新
2、要求手动安装VC2005组件
3、要求安装Apple QuickTime

★★★ Open-Webkit-Sharp C# 3.0.1.0023
1、基于WebKit.NET 0.5开发  1、内核较老,日后可能有问题
2、可以实现JS回调C#方法 2、要求手动安装VC2005组件
3、用法与WebBrowser相似 3、要求安装Apple QuickTime
4、学习成本相对较低,易上手 4、源码编译缺少组件,无法调试
5、只能调用他的DLL进行二次开发
6、低版本内核显示字体有点怪

要点说明:

01、Open-Webkit-Sharp 默认不存在JS对话框,如果需要显示alert box,则需要在ShowJavaScriptAlertPanel进行捕捉,然后显示对话框;
02、Open-Webkit-Sharp 内核较老,所以显示的字体会比较粗(旧版本就是如此),可通过webKitBrowser.Appearance.FontSmoothing缓解,暂时无法根治;
03、以上所有的项目,都必须在X86环境下,才能正常工作,否则运行直接报错;部分项目还需要取消勾选“启动Visual Studio承载进程”;
04、从长远上说,应该选用Xilium.CefGlue,但是这个苦于无法解决“JS调用C#方法”问题,因而被迫选择Open-Webkit-Sharp作为折中方案;
05、在XP环境中,Xilium.CefGlue的JS对话框与默认主题冲突,会错位,换主题可解决;
06、Open-Webkit-Sharp 需要依次安装VC2005、VC2008、VC2010组件之后,才能正常工作,否则会有各种报错;
07、CefSharp 需要安装VC2012 x86 11.0.60610.1组件才能运行,必须是这个版本,其他一律没用;编译代码时需要重新设置“平台工具集”,改成支持XP模式;
08、CefSharp 网页加载过程中(未加载完毕),如果这个时候退出程序,则会导致进程无法退出;此外XP环境下存在较严重的进程不会退出问题;
09、CefSharp 对于CSS3、JS的解析效果不如Xilium.CefGlue,两者相比,会发现CefSharp比较慢、会卡、有细微停顿等问题;
10、Xilium.CefGlue 已经解决“JS调用C#方法”问题,但是需要把JS代码写在程序后台,实现起来非常繁琐,很不灵活;
11、Xilium.CefGlue 已成功封装类库 Binding’s CLR Object,现在只需定义变量名称,然后new class(),就可完成全自动绑定,不再需要后台写JS,非常方便;
12、只要是基于CEF开发的项目,都必须安装NPAPI版本的Adobe Flash组件,否则不能播放动画。Chrome系统默认安装的是PPAPI版本,如果用命令行注册,也可以支持。 

下载地址:2016年4月10日 此项目所有源码,以及文档正式开源 244840771 加QQ群下载

本文采用 CC协议 发布,转载请注明:转载自 吾乐吧软件站

本文链接地址:http://www.wuleba.com/?p=23590

 
 from:http://www.wuleba.com/23590.html

【转】.NET多种WebKit内核/Blink内核浏览器初步测评报告的更多相关文章

  1. 基于Gecko内核的简单浏览器实现

    分享一个基于Gecko内核的简单浏览器实现过程. 项目需要需要开发一个简单浏览器,由于被访问的网页中有大量Apng做的动画,使用IE内核的webbrowser不能播放,使用基于WebKit和Cefsh ...

  2. 如何搞定IE+google双内核的360浏览器表单自动回填兼容问题

    最近开发中碰到一个关于表单问题,在用户提交表单时候浏览器会提示是否保存帐号 如果点击保存,在退出帐号切换其他帐号时,浏览器会自动为表单填充数据,为了解决这个自动填充问题时, 主要分2个思路来解决,一个 ...

  3. js/jQuery判断浏览器名称、内核版本、浏览器壳

    1.js方法 /* 判断浏览器名称和版本 目前只能判断:ie/firefox/chrome/opera/safari 2012年5月16日23:47:08 浏览器内核UA:UA; 浏览器内核名称:NV ...

  4. Linux设备驱动开发详解-Note(5)---Linux 内核及内核编程(1)

    Linux 内核及内核编程(1) 成于坚持,败于止步 Linux 2.6 内核的特点 Linux 2.6 相对于 Linux 2.4 有相当大的改进,主要体现在如下几个方面. 1.新的调度器 2.6 ...

  5. Linux内核之 内核同步

    上文我们介绍过进程调度,Linux内核从2.6版本开始支持内核抢占,所以内核很多代码也需要同步保护. 一.同步介绍 1.临界区与竞争条件 所谓临界区(critical regions)就是访问和操作共 ...

  6. 在阿里云中编译Linux4.5.0内核 - Ubuntu内核编译教程

    实验环境:Ubnuntu 64位(推荐使用14.04)+Xshell 阿里云现在提供的云服务器很好用的,用来编译内核性能也不错.本文介绍最基本的内核编译方法,为了方便,所有操作均在root用户下进行. ...

  7. Linux 内核开发—内核简单介绍

    内核简单介绍 Linux 构成 Linux 为什么被划分为系统空间和内核空间 隔离核心程序和应用程序,实现对核心程序和数据的保护. 什么内核空间,用户空间 内核空间和用户空间是程序执行的两种不同的状态 ...

  8. 1.移植3.4内核-分析内核启动过程,重新分区,烧写jffs2文件系统

    1.在上章-移植uboot里.我们来分析下uboot是如何进入到内核的 首先,uboot启动内核是通过bootcmd命令行实现的,在我们之前移植的bootcmd命令行如下所示: bootcmd=nan ...

  9. Linux 内核开发 - 内核定时器

    时间差的度量 系统的定时器硬件以固定的频率产生时钟中断,产生始终中断的间隔以HZ 常量来决定,通常在50~1200之间,x86默认是1000.HZ能够依据不同的内核来配置. Linux 採用jiffi ...

随机推荐

  1. HDOJ-三部曲一(搜索、数学)-1002-Children of the Candy Corn

    Children of the Candy Corn Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 131072/65536K (Jav ...

  2. 【Oracle XE系列之二】PLSQL Developer 远程连接Oracle XE数据库

    1.去http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html下载Instant Cli ...

  3. IO 流 定义

    一.什么是流? 流就是字节序列的抽象概念,能被连续读取数据的数据源和能被连续写入数据的接收端就是流,流机制是Java及C++中的一个重要机制,通过流我们可以自由地控制文件.内存.IO设备等数据的流向. ...

  4. HDU1556-color the ball(线段树)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1556 #include<cstdio> using namespace std; stru ...

  5. 关于HttpWebRequest.KeepAlive

    于HTTP服务器每个客户端2个连接的限制这两天猫在家里搞一个多线程的断点续传得C#程序,发现同时只能开2个线程下载,其他的线程一律要等待,这样就导致下载大文件时其他线程经常超时,郁闷好久.今天回公司无 ...

  6. Magento 自定义URL 地址重写 分类分级显示

    我们打算将URL在分类页面和产品页面分别定义为: domain.com/category/分类名.html domain.com/category/子分类名.html domain.com/goods ...

  7. ANTLR3完全参考指南读书笔记[01]

    引用 Terence Parr. The Definitive ANTLR Reference, Building Domain Specific Languages(antlr3 version). ...

  8. linux 安装redis

    1:首先命令行下载安装包 wget http://download.redis.io/releases/redis-2.8.13.tar.gz 2:进行解压 tar xzf redis-2.8.13. ...

  9. 目标跟踪之Lukas-Kanade光流法

    转载自:http://blog.csdn.net/u014568921/article/details/46638557 光流是图像亮度的运动信息描述.光流法计算最初是由Horn和Schunck于19 ...

  10. My97DatePickerBeta 时间选择控件用法

    用法说明:只需要调用一个js<script language="javascript" type="text/javascript" src=" ...