CEF(Chromium Embedded Framework, 嵌入式Chromium框架)是C/C++開發(fā)的庫 目前 Google Chrome(Google瀏覽器),Chromium瀏覽器,Opera等都是基于CEF為核心,Webkit引擎的瀏覽器。 Xilium.CefGlue是對CEF項目的.net的包裝,它是用P/Invoke的方式來調(diào)用CEF類庫。 CEFSharp是用C++/CLI的方式來調(diào)用CEF類庫的。 原先使用的是Xilium.CefGlue,如果只是單純在窗口上實現(xiàn)的話是沒問題的,由于我的需要做成用戶控件,所以導致調(diào)用的時候一些dll文件無法調(diào)用到,用戶控件無法正常加載到WinForm窗口上,后來改用CEFSharp 一. 開發(fā)環(huán)境 VS2010 + CefSharp 49.0.1 二. 開發(fā)步驟(以CefSharp為例) 1. 新建Windows窗體應用程序 GoogleWebBrowserControl,使用.NET FrameWork 4.0,這里需要注意:CefSharp和.NET FrameWork版本要相對應。 2. 在生成=》配置管理器中,將活動解決方案平臺改成 x86 (CEF不能自適應 x86 | x64,必須選擇一個目標),目標平臺也必須和解決方案平臺一致。 3. 針對VS2010,默認是沒有NuGet包管理器,需要在VS工具條—擴展管理器中添加NuGet程序包管理器 4.打開 NuGet 程序包管理器控制臺:工具=>NuGet 程序包管理器=》程序包管理器控制臺。搜索CefSharp.WinForm,選擇版本和需要添加的項目,安裝后會將所有需要的文件加入選擇的項目中,并且將dll文件加入引入。 5.如果你已將CefSharp所有需要的文件已下載到本地,則第3、4步不需要操作,直接將下載的文件加入項目的Debug下,將CefSharp.Core.dll、CefSharp.dll、CefSharp.WinForms.dll文件引入項目中。 6.代碼編寫 注意:用戶控件生成谷歌內(nèi)核瀏覽器控件時,不能在用戶控件中直接加載谷歌內(nèi)核瀏覽器控件初始化的代碼,必須到使用用戶控件的頁面中調(diào)用該方法。否則報錯。 // 可選: (查看與cef有關的程序包) 7.新建項目,在項目中使用此用戶控件,在后臺代碼中直接調(diào)用 執(zhí)行后結(jié)果如下: 源碼無法上傳 |
|