C# WinForm使用谷歌浏览器内核

文章转载于  逸云蓝天eskysky    https://www.eskysky.com/1645.html

CefSharp中文帮助文档

https://github.com/cefsharp/CefSharp/wiki/CefSharp%E4%B8%AD%E6%96%87%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3#a9_1

在开发过程中经常需要在程序中嵌入浏览器控件用于访问网页,Visual Studio中自带了一个webbrowser控件,但无奈这个控件是调用用户电脑上的IE浏览器来实现的,如果用户装的是低版本IE(比如Win7的IE8)很多新的网页标准就无法得到支持,这时使用CefSharp来替代webbrowser控件是一个不错的选择。

这里用Visual Studio 2015演示CefSharp的使用。

首先请确保程序的目标框架至少是.NET Framework 4.5.2,不是的话请双击“解决方案资源管理器”里的Properties更改目标框架。

------------恢复内容开始------------

------------恢复内容开始------------

文章转载于  逸云蓝天eskysky    https://www.eskysky.com/1645.html

在开发过程中经常需要在程序中嵌入浏览器控件用于访问网页,Visual Studio中自带了一个webbrowser控件,但无奈这个控件是调用用户电脑上的IE浏览器来实现的,如果用户装的是低版本IE(比如Win7的IE8)很多新的网页标准就无法得到支持,这时使用CefSharp来替代webbrowser控件是一个不错的选择。

这里用Visual Studio 2015演示CefSharp的使用。原作者使用的是vs2015 我使用的是vs2019 在安装过程中应该会有些出入

首先请确保程序的目标框架至少是.NET Framework 4.5.2,不是的话请双击“解决方案资源管理器”里的Properties更改目标框架。

在后面安装的程序包中需要至少4.5.2版本的支持

点击项目菜单下的“管理NuGet程序包”。

在浏览选项卡下的搜索框里搜索“cefsharp”,安装搜索结果里的CefSharp.WinForms。

然后再安装CefSharp.Common,一般在安装这项的时候还会自动安装上cef.redist.x86和cef.redist.x64。

在vs2019安装CefSharp.WinForms时CefSharp.Common也一起自动安装了,共自动安装了4个项目

安装完成后“已安装”选项卡下应该有以下这4个内容。

把下面的代码复制进Form1.cs,这时VS可能会有报错,关闭VS再重新启动一下就能解决问题。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;
 
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
string url = "https://www.baidu.com";
ChromiumWebBrowser webview = new ChromiumWebBrowser(url);
webview.Dock = DockStyle.Fill;
this.Controls.Add(webview);
}
}
}

可能会出现的报错完整代码,重启后无报错

在安装过程中我遇到了和原作者不同的情况,重启VS后,引用全部变了了不可用,有黄色的感叹号,后有进行了多次重启VS2019,后等待了一段时间,引用变得正常。

上面的步骤都做完后试着按F5运行一下,发现有报错,大概意思是不能以AnyCPU的模式运行。

这里需要点击“生成”菜单下的“配置管理器”,把活动解决方案平台改成x86。

在此处遇到了原作者不同地方,我的环境是X64没有X86可以选择,然后在选项那里点击编辑添加了X86环境,后面变得正常了

 

改完上面的之后Properties里的目标平台也会自动改成x86。

再次运行即可成功显示出网页。截取了一个和原作者不同的图,表示自己已经调用成功

测试一下浏览器内核,是Chrome79,现在终于可以摆脱那难用的IE内核了。 未能找到作者怎么调用版本信息的方法


本文版权归逸云蓝天所有,转载请注明出处并添加本文链接。

------------恢复内容结束------------

------------恢复内容结束------------

原文地址:https://www.cnblogs.com/QZBOY/p/14182922.html