標籤:style blog http io ar color sp java strong
轉自:http://www.wuleba.com/23590.html[吾樂吧軟體站]
星級 名稱語言版本優點缺點
★★ Chromium Embedded Framework (CEF) C/C++ 3.1547.1406
1、開源項目,有社區支援 1、C++更新維護成本太高
2、一直都還在更新維護 2、開發難度較大
3、基於CEF二次開發項目多
★★★★ Xilium.CefGlue C# 3.1547.1448
1、基於CEF,DotNET封裝 1、參考資料較少
2、繼承CEF優良特性 2、可能有些大坑,需要自己解決
3、無需安裝多餘組件,直接可用 3、已知JS調C#方法,但方法很繁瑣
4、CSS3、JS、HTML5 效率高
5、已成功封裝類庫 Binding’s CLR Object
★★★☆ CefSharp C# 1.25.5
1、基於CEF,DotNET封裝 1、要求手動安裝VC2012組件
2、繼承CEF優良特性 2、此項目是C++與C#混合開發
3、可以實現JS回調C#方法 3、網頁載入中關閉,進程不退出
4、CLR OBJ 與 JS 互動非常強 4、CSS3與JS效率比CefGlue略低
5、官方提供的資料比較有用
★ O.N.E C#/VB.NET/DELPHI/C++ 534.x
1、官方提供一定文檔資料 1、收費
2、核心、開發語言較全 2、主要是VC資料,C#較少
☆ Node-Webkit C++/JS/HTML5 0.8.0
1、跨平台 1、資料極少
2、用Web技術編寫案頭應用 2、學習成本極高,與項目不符
★★ WebKit.NET C# 0.5
1、很多資料都是基於這個開發 1、作者已在2010年停止更新
2、要求手動安裝VC2005組件
3、要求安裝Apple QuickTime
★★★ Open-Webkit-Sharp C# 3.0.1.0023
1、基於WebKit.NET 0.5開發 1、核心較老,日後可能有問題
2、可以實現JS回調C#方法 2、要求手動安裝VC2005組件
3、用法與WebBrowser相似 3、要求安裝Apple QuickTime
4、學習成本相對較低,易上手 4、源碼編譯缺少組件,無法調試
5、只能調用他的DLL進行二次開發
6、低版本核心顯示字型有點怪
要點說明:
01、Open-Webkit-Sharp 預設不存在JS對話方塊,如果需要顯示alert box,則需要在ShowJavaScriptAlertPanel進行捕捉,然後顯示對話方塊;
02、Open-Webkit-Sharp 核心較老,所以顯示的字型會比較粗(舊版本就是如此),可通過webKitBrowser.Appearance.FontSmoothing緩解,暫時無法根治;
03、以上所有的項目,都必須在X86環境下,才能正常工作,否則運行直接報錯;部分項目還需要取消勾選“啟動Visual Studio承載進程”;
04、從長遠上說,應該選用Xilium.CefGlue,但是這個苦於無法解決“JS調用C#方法”問題,因而被迫選擇Open-Webkit-Sharp作為折中方案;
05、在XP環境中,Xilium.CefGlue的JS對話方塊與預設主題衝突,會錯位,換主題可解決;
06、Open-Webkit-Sharp 需要依次安裝VC2005、VC2008、VC2010組件之後,才能正常工作,否則會有各種報錯;
07、CefSharp 需要安裝VC2012 x86 11.0.60610.1組件才能運行,必須是這個版本,其他一律沒用;編譯代碼時需要重新設定“平台工具集”,改成支援XP模式;
08、CefSharp 網頁載入過程中(未載入完畢),如果這個時候退出程式,則會導致進程無法退出;此外XP環境下存在較嚴重的進程不會退出問題;
09、CefSharp 對於CSS3、JS的解析效果不如Xilium.CefGlue,兩者相比,會發現CefSharp比較慢、會卡、有細微停頓等問題;
10、Xilium.CefGlue 已經解決“JS調用C#方法”問題,但是需要把JS代碼寫在程式後台,實現起來非常繁瑣,很不靈活;
11、Xilium.CefGlue 已成功封裝類庫 Binding’s CLR Object,現在只需定義變數名稱,然後new class(),就可完成全自動綁定,不再需要後台寫JS,非常方便;
12、只要是基於CEF開發的項目,都必須安裝NPAPI版本的Adobe Flash組件,否則不能播放動畫。Chrome系統預設安裝的是PPAPI版本,如果用命令列註冊,也可以支援。
.NET多種WebKit核心/Blink核心瀏覽器