您的位置:首页 > 移动开发

使用 CefSharp 在 C# App 中嵌入 Chrome 浏览器

2016-12-27 07:15 465 查看

介绍

以前曾试过在app中整合一个可靠又快速的web浏览器吗?
在本文中,你会学到如何轻松地将奇妙的CefSharp网页浏览器组件(基于Chromium)集成到你的C# app中。
然后,你可以使用此web浏览器:
给用户提供一个集成的浏览体验

用HTML / JavaScript编程添加嵌入式界面

用于web自动化

CefSharp可靠,快速,完全开源,不需要任何额外的依赖就可以安装到最终用户(除VC ++ Runtime 2013以外)。
在本指南中,我们将使用WinForms项目,但CefSharp同样可工作于WPF项目。

入门

按照以下步骤快速开始CefSharp。
项目
1.用.NET 4.5.2创建一个Windows窗体应用程序(C#)项目
2.对项目命名(如“CefTest”)



DLL文件(NuGet方法)
3A)如果你使用的是NuGet,那么你可以从NuGet代码仓库抓取CefSharp.WinForms,跳过下面的手动方法。
3B)如果你已经使用了NuGet,那么导航SOLUTION > Configuration Manager,并将你的项目设置为x86或x64,因为目前不支持AnyCPU。



DLL文件(手动方法)
如果你使用的是NuGet,那么请跳过此章节!
3A)下载CefSharp二进制文件并解压它们。
CefSharp v51 x86(32位app)
CefSharp v51 x64(64位app)
3B)右击你的项目,点击“Add Reference”,然后选择“Browse”。



3C)选择这些DLL文件:
CefSharp.dll
CefSharp.Core.dll
CefSharp.WinForms.dll



3D)用ZIP选择所有文件:



3E)复制那些文件到项目的Debug文件夹(在Bin之中)



代码

4.右击你的主窗体,并选择“View Code”。



5.添加以下代码:
复制到
import
 部分:
using CefSharp;using CefSharp.WinForms;

复制到代码段:
public ChromiumWebBrowser browser;public void InitBrowser(){
Cef.Initialize(new CefSettings());
browser = new ChromiumWebBrowser ("www.google.com");    this.Controls.Add(browser);
browser.Dock = DockStyle.Fill;
}

在调用 
InitializeComponent()
之后就调用InitBrowser():
InitBrowser()

你的代码最后应该是这样的:



运行吧!
6.按F5键,你会看到谷歌主页!



故障排除

一个类型为’System.IO.FileNotFoundException’未处理的异常出现在browser.exe中
其他信息:无法加载文件或’CefSharp.Core.dll’程序集或它的一个依赖。

如果你收到此错误,请确保你安装了Visual C ++ 2013 Redistributable。

一个类型为’System.BadImageFormatException’未处理的异常出现在browser.exe中
其他信息:无法加载文件或’CefSharp.Core, Version=43.0.0.0, Culture=neutral,程序集

如果你得到这个错误,它意味着你在64位的PC上,而你的app用AnyCPU模式构建。你需要改变为x86或x64模式:
打开Solution Explorer面板

右键点击你的项目>Project Properties

单击Build标签

更改Platform target为x86或x64

全功能浏览器

如果你正在寻找一个全功能浏览器项目,那么检查这些用C# CefSharp构建的开源浏览器。
WebExpress
WPF。带有建议、多个标签、下载、书签、历史记录的地址栏。
<作者未提供截图>
SharpBrowser
Windows Forms。地址栏,多标签,下载。



英文原文:Embedding Chrome in your C# App using CefSharp

原文地址:http://www.codeceo.com/article/cefsharp-charp-app-chrome.html
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: