WinForm窗体程序中使用CefSharp获取加载后的资源截取request参数拦截response数据注入jquery文件和js代码-使用CefSharp
Posted 黑峰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WinForm窗体程序中使用CefSharp获取加载后的资源截取request参数拦截response数据注入jquery文件和js代码-使用CefSharp相关的知识,希望对你有一定的参考价值。
一、开发环境
1、本机,win7 x64, .net 4.6,vs2019
2、源码地址:源代码csdn 或者底部qq问我要。或者 百度网盘 udbk
二、安装cefsharp
1、新建一个winform窗体程序,从nuget中搜索cefsharp并安装
2、修改项目属性为x86
在解决方案上,右键鼠标,选择属性,更改项目属性为x86,没有x86选项就在图中配置管理器中新建
3、重新生成项目,无错误
三、cefsharp基本使用,初始化、加入网址浏览、关闭、获取加载后的资源
1、初始化
public static string url = "https://www.baidu.com";//设置进入网页 public ChromiumWebBrowser browser = new ChromiumWebBrowser(url);//初始化cefsharp浏览器 public Form1() { InitializeComponent(); browser.Dock = DockStyle.Fill;//设置填充满窗体 this.Controls.Add(browser);//把cefsharp加入到窗体中 }
运行,就展示了百度的首页
2、关闭事件
在窗体的关闭事件中,要释放cefsharp的资源
private void Form1_FormClosing(object sender, FormClosingEventArgs e) { CefSharp.Cef.Shutdown(); }
3、获取加载后的资源。在浏览器FrameLoadEnd事件中处理
public void Init(string url, int? insertIndex = null) { browser.Dock = DockStyle.Fill; panbrowser.Controls.Add(browser); browser.RequestHandler = new WinFormsRequestHandler(Init); browser.FrameLoadEnd += webBrowser_FrameLoadEndEventArgs; } /// <summary> /// 页面加载完成 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void webBrowser_FrameLoadEndEventArgs(object sender, FrameLoadEndEventArgs e) { string htmlstr = string.Empty; if (e.Frame.IsMain) { browser.GetSourceAsync().ContinueWith(taskHtml => { htmlstr = taskHtml.Result; }); } }
以上是关于WinForm窗体程序中使用CefSharp获取加载后的资源截取request参数拦截response数据注入jquery文件和js代码-使用CefSharp的主要内容,如果未能解决你的问题,请参考以下文章
WinForm窗体程序中使用CefSharp获取加载后的资源截取request参数拦截response数据注入jquery文件和js代码-截取request参数
WinForm窗体程序中使用CefSharp获取加载后的资源截取request参数拦截response数据注入jquery文件和js代码-注入jquery文件和js代码
在winform中使用cefsharp.winform嵌入浏览器(含视频教程)
使用cefsharp在winform中嵌套浏览器,解决程序闪退问题,你也可以做一个红芯浏览器^v^