CefSharp应用——环境搭建

Posted liweis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CefSharp应用——环境搭建相关的知识,希望对你有一定的参考价值。

CefSharp简介

CEF ,全称Chromium Embedded Framework ,基于谷歌 Chromium项目的开源Web Browser控件,它的主要用途是嵌入了第三方应用以实现浏览器相关的功能。例如国内的360安全浏览器的兼容模式即IE的内核,极速模式即Chromium内核;最近微软新推出的Microsoft Edge也是基于Chromium开源项目实现的,看起来挺简洁的。

CEF地址:https://bitbucket.org/chromiumembedded/

技术图片

而CefSharp是Cef的C#版本,让Chromium浏览器也可嵌入WinForms 和WPF中。

CefSharp地址:http://cefsharp.github.io/

CefSharp用途

关于CefSharp的用途,目前接触到的有:

1、部署开发的网页程序:我想B/S项目也不会专门造"轮子"来部署web应用程序;

2、定制开发浏览器:国内很多浏览器都是基于Chromium来包装的,如搜狗、360、QQ浏览器等;

3、特定的网页处理:例如网页爬虫,除了可以使用强大的Python来做,CefSharp也可完成;

4、客户端嵌入Web应用:例如项目中开发一套B/S应用,可以直接嵌入C/S中,不必重写大量代码。

如下图所示,为了使用Cesium框架在C/S项目中,在完成Cesium的B/S功能开发后,通过CefSharp可嵌入到C/S中使用。

示例一:使用CefSharp加载百度地图网页:

技术图片

示例二:使用CefSharp加载Cesium球。

技术图片

CefSharp开发示例

第一步,新建VS项目(目前最新版79需要Framework4.5.2)后,修改平台为X86或X64,Cef有32和64位之分:

技术图片

第二步,使用NuGet搜索cef,安装CefSharp.WinForms,其他cef.redist、CefSharp三个将自动安装,因为它们之间存在依赖关系。

技术图片

第三步,写入初始化浏览器代码:

添加引用

using CefSharp;
using CefSharp.WinForms;

定义浏览器对象

public ChromiumWebBrowser ChromeBrowser;

初始化浏览器

//初始化浏览器并启动
public void InitializeChromium()
{
    //参数设置
    CefSettings settings = new CefSettings();
    Cef.Initialize(settings);
    //创建实例
    chromeBrowser = new ChromiumWebBrowser("https://www.baidu.com");
    //添加控件
    this.Controls.Add(chromeBrowser);
    chromeBrowser.Dock = DockStyle.Fill;
}

技术图片

第四步,调试运行,查看效果。

技术图片

以上是关于CefSharp应用——环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

为 CefSharp 应用内置 C++ 运行环境并启用 AnyCPU 支持

CefSharp使用入门

C# 使用CefSharp兼容谷歌浏览器并播放MP4视频

spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段

cefsharp学习笔记

WinForm窗体程序中使用CefSharp获取加载后的资源截取request参数拦截response数据注入jquery文件和js代码-使用CefSharp