CEFSharp.Winform使用踩过的坑(XP和WIN7兼容方法)

为了使用CefSharp,为了兼容XP,NUGET了最后一个支持.net4.0的版本:49.0.1。然后开始了

1、为了能JS回调C#方法,故搜索了一些资料,主要是要注册采用RegisterJsObject方法注册回调,关于该方法的使用自行搜索

2、坑来了!为了在应用中使用数据库,故在App.config中定义了字符串连接,虽然前期还没有操作数据库,由于粗心,App.config格式错误:如

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<add key="SQLiteConnectionString" value="Data Source=IgnitionV2.db3;Pooling=true;FailIfMissing=false"/>
<add key="IsEncrypt" value="false"/>
</configuration>

编译没有任何问题,程序跑起来加载CEFSharp浏览器时报错了“System.TypeInitializationException”!!!,搜索了一下错误,说是配置文件有误,前思后想,此时还没有用到配置文件中的功能,只要调用RegisterJsObject,运行时就报错!

3、好吧,无奈下,只好检查App.config,终于发现少了Section

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="SQLiteConnectionString" value="Data Source=IgnitionV2.db3;Pooling=true;FailIfMissing=false"/>
<add key="IsEncrypt" value="false"/>
</appSettings>

</configuration>

4、终于不报错了,可爱的浏览器界面成功加载了!

 

5、将编译好的程序放至一台干净的XP机器上,加载时又报错啦(前期已装了.net framework 4.0),当然,错误提示是未能正确加载"CefSharp.Core.dll“,检查了一下,发现运行目录 下是存在该文件的,难道此版本的CefSharp不兼容XP?

6、回想起以前在查看Cefsharp使用方法时,说是要安装Visual C++ Redistributable for Visual Studio 2013  (x86),我是使用的X86编译。于是在XP环境下,下载了https://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x86.exe,安装完成!然后。。。。。。。。

可以看到浏览器画面了!不容易!

posted @ 2018-10-09 14:10  古城浪子  阅读(1799)  评论(0编辑  收藏  举报