.net使用cefsharp开源库开发chrome浏览器(二)

离上篇写介绍pc端的混合开发和为什么以cefsharp入手研究混合开发已经有好几天,一直忙,抽不出时间继续写怎么搭建cefsharp开发环境。其实没有时间是借口,一切都是懒,没有爱到深处。

今天继续写写怎么搭建cefsharp环境,开发winform、web混合应用程序。

一、下载程序集dll。

程序集下载地址在https://www.nuget.org/packages/CefSharp.WinForms/37.0.0-pre02。可以通过nuget轻松获得所有的依赖库。如果的你的网络不好,可以先下载,然后再在项目中添加引用。 最小的程序集以及资源需要如下图

最简单的方法是通过包获取,Install-Package CefSharp.WinForms -Pre

二、把项目配置为x86或者x64目标平台

添加项目之后进行编译,可以你会碰到下面这个错误。

CefSharp.Common does not work correctly on ‘AnyCPU‘ platform. You need to specify platform (x86 / x64)。 这个错误其实是cefsharp的一个缺陷。cefsharpPic的项目团队说以后会把这个bug修补。我们暂时现在把这个问题解决。 就是项目的目标平台改为x64 或者x86。

三、初始化cefsharp并创建添加ChromiumWebBrowser显示网页。

public partial class Form1 : Form

{

CefSharp.WinForms.ChromiumWebBrowser webCom = null;

public Form1()

{

InitializeComponent();

Load +=Form_Load;

}

protected void Form_Load(object sender, EventArgs e)

{

webCom = new CefSharp.WinForms.ChromiumWebBrowser("www.baidu.com");

webCom.Dock = DockStyle.Fill;

panel1.Controls.Add(webCom);

webCom.Load("www.baidu.com");

}

private void btn_multiChrome_Click(object sender, EventArgs e)

{             for (int i = 0; i < 5; i++)             {

childForm child = new childForm();

child.Show();

}

}

}

这样winfrom就可以显示百度首页了

四、个人初次搭建cefsharp环境的时候遇到的问题。

1、没有在程序启动的时候初始化cefsharp导致添加ChromiumWebBrowser控件显示一片灰色。

2、bin目录下没有包含CefSharp.BrowserSubprocess.Core.dll、CefSharp.BrowserSubprocess.exe。关于这两个资源文件的作用,有兴趣可以了解

浏览器的多进程架构机制原理。这里给一个资料你可以了解,讲解主流浏览器多进程架构机制:Chrome、IE。

下图是我的验证,打开多个ChromiumWebBrowser控件显示网页就加载多个CefSharp.BrowserSubprocess.exe进程。

这次先写到这里。虽然文章没有什么技术含量,但是是自己的实际经验和技术的探索,还希望得到群友的支持,也自己如果在cefsharp继续有什么收获也会继续在这里分享。

时间: 2024-10-12 22:27:10

.net使用cefsharp开源库开发chrome浏览器(二)的相关文章

.net使用cefsharp开源库开发chrome浏览器(一)

一.背景 公司现在使用.NET技术,有web组.有winfrom桌面组.而这两组团队业务部分有分多相似的地方,使用的数据源也是相同的,以此造成两组团队之间做了很多彼此都已经做过的工作. 有什么办法使得重复建设减少呢?经过不断的搜索,在网上看到了hybrid混合开发模式.hybrid开发有移动端的和pc端的.在移动端方面,借助第三方的框架.工具可以做到逻辑一套代码, 只做少量的配置就可以适用iphone/android/windowsphone,比如xamarin工具:在pc端方面,可以做到web

Modbus库开发笔记之二:Modbus消息帧的生成

前面我们已经对Modbus的基本事务作了说明,也据此设计了我们将要实现的主从站的操作流程.这其中与Modbus直接相关的就是Modbus消息帧的生成.Modbus消息帧也是实现Modbus通讯协议的根本. 1.Modbus消息帧分析 MODBUS协议在不同的物理链路上的消息帧有一些差异,但我们分析一下就会发现,在这些不同的消息帧中具有一下相同的部分,这对我们实现统一的数据操作非常重要,具体描述如下: (1).简单协议数据单元 MODBUS协议定义了一个与基础通信层无关的简单协议数据单元(PDU)

Chrome浏览器二维码生成插件

  猛击就可以使用啦->>>猛击使用   源码如下: 源码打包   源码: jquery-2.1.3.min.js jquery.qrcode.min.js https://github.com/jeromeetienne/jquery-qrcode spectrum.css spectrum.js https://github.com/bgrins/spectrum manifest.json { "manifest_version": 2, "name&

cryptopp开源库的使用(二):base64加密

很多时候我只是优秀工具的使用者,优秀的工具用好了才能发挥作用 最近使用cryptopp的base64对压缩后的zip文件内容进行加密遇到了问题. 首先zip压缩没问题,可是最后得到的base64字符串不对: 1.长度不对(问题应该是源字符串的问题) 2.使用现成的工具解密得不到zip文件内容(问题没有头绪) 既然没法从问题的表现来推理解决,那就从正常逻辑往后判断问题的根源点 1.先检查zip的读取,利用fread读出后再fwrite写入,以确定fread的内容是有效的 此过程中发现fwrite写

手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单

手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单 手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单 手把手教你开发Chrome扩展二:为html添加行为 手把手教你开发Chrome扩展三:关于本地存储数据 Chrome的更新速度可以说前无古人,现在我每天开机的第一件事就是打开Chrome检查是不是有了新版本.界面清爽.操作人性化.网络备份资料和快速的启动速度令我爱不释手,还有它拥有众多的扩展程序,相对于firefox的插件来说,

基于.net开发chrome核心浏览器【一】

原文:基于.net开发chrome核心浏览器[一] 说明: 这是本系列的第一篇文章,我会尽快发后续的文章. 源起 1.加快葬送IE6浏览器的进程 世界上使用IE6浏览器最多的地方在中国 中国使用IE6浏览器最多的地方在企业中 让他们自己去装个chorme太难了 索性开发个浏览器(其实是浏览器的外壳)给他们 用"代码改变世界"是博客园园友的口号 2.一劳永逸的解决浏览器兼容问题 各种浏览器的CSS hack问题再也不用担心了 甚至公司里前端的职位也可以减少几个了 3.更方便的使用更强大的

基于.net开发chrome核心浏览器【二】

原文:基于.net开发chrome核心浏览器[二] 一: 上一篇的链接: 基于.net开发chrome核心浏览器[一] 二: 相关资源介绍: chrome Frame: 让IE有一颗chrome的心,看起来不错,但我没有深入研究这个东西. http://www.google.com/chromeframe?hl=zh-CN&quickenable=true https://developers.google.com/chrome/chrome-frame/ WebKit.Net 已经有一段时间没

基于.net开发chrome核心浏览器【七】

原文:基于.net开发chrome核心浏览器[七] 这是一个系列的文章,前面六篇文章的地址如下: 基于.net开发chrome核心浏览器[六] 基于.net开发chrome核心浏览器[五] 基于.net开发chrome核心浏览器[四] 基于.net开发chrome核心浏览器[三] 基于.net开发chrome核心浏览器[二] 基于.net开发chrome核心浏览器[一] 这篇文章和前面六篇文章关系不大,你如果懒得看前面六篇的话,从这一篇开始看也没问题 之前写的六篇文章,都是基于 Xilium.C

【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位...

[转]http://www.tuicool.com/articles/jyA3MrU Android开源库 自己一直很喜欢Android开发,就如博客签名一样, 我是程序猿,我为自己代言 . 在摸索过程中,GitHub上搜集了很多很棒的Android第三方库,推荐给在苦苦寻找的开发者,而且我会 不定期的更新 这篇文章. Android下的优秀开发库数不胜数,在本文中,我列举的多是开发流程中最常用的一些.如果你还想了解更多的Android开源库,可以关注我的博客,每一个库都是我认真查看或者编译运行