最近需要用.NET开发winform项目,搜索了下html做界面方面的资料,希望替代原生webbrowser控件,结果发现CefSharp这个开源控件项目。cefsharp目前中文资料不多,下面记录CEFSharp使用的一些过程。

首先是写个Demo,直接使用VS创建项目,并且用nuget获取cefsharp。demo代码很简单:

private void Form1_Load(object sender, EventArgs e)

{

WebView webView = new WebView();

webView.Address = "http://www.baidu.com";

webView.Dock = DockStyle.Fill;

this.Controls.Add(webView);

}

直接运行,结果报错:

e791616b9a953c892771ce73ab08b8fa.png

发现是少了一个叫libcef.dll的dll文件,从项目packages文件夹下找到这个dll复制到bin/debug目录下。

接着运行,结果也没错误提示,也没反应。后来查看了下debug.log,发现又出错了:

[0401/163914:WARNING:resource_bundle.cc(303)] locale_file_path.empty()

[0401/163914:FATAL:cef_context.cc(411)] Check failed: !loaded_locale.empty(). Locale could not be found for en-US

提示找不到文件,网上搜索发现是bin/debug/locales文件夹里缺少en-US.pak文件,从packages文件夹里找到en-US.pak复制过去。

一切运行正常了。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐