CEF3可行性


Chromium Embedded Framework

顧名思義,內嵌式CHROME,詳細的介紹參閱

http://yogurtcat.com/posts/cef/hello-cef.html

為什么要考慮選擇CEF

1、 目前市場上瀏覽器種類很多,每種的版本也很多,即使我們使用了成熟的UI框架也不能保證每個JS在每種瀏覽器上都成兼容,程序員也不可能在各種瀏覽器上調試后再發布

2、 一卡通涉及本地硬件資源操縱(如串口、USB、局域網、UKey),傳統方法是制作ActiveX控件,讓控件與JS進行交互,這種方法比較脆弱,且安裝麻煩,最關鍵:一般只在IE上正常工作,多數瀏覽器不能穩定支持ActiveX

參閱:

http://mozilla.com.cn/post/35931/

http://activex-for-chrome.softonic.cn/

CEF在一卡通上如何應用

1、 不需要操縱本地硬件資源的操作員(如增刪改查數據、查看報表),可以繼續直接使用瀏覽器訪問平台(仍然可能存在兼容性問題)

2、 通過發布安裝包,以WINFORM的方式在本地運行程序,固定使用某個版本的CEF,相當於固定使用了某個版本的瀏覽器,規避兼容性問題。即在一個CS程序中嵌入了瀏覽器,但平台仍然是以BS為主。

3、 需要操縱本地硬件資源時,由JS通過HTTP向WINFORM(開有HTTP監聽)傳遞消息,執行相關功能,即將原來ActiveX的功能遷移到winform中,規避瀏覽器兼容ActiveX問題以及解決ActiveX執行不穩定(以及性能低下)的問題

4、 使用VS2013提供的net native功能,將winform程序本地化,提升執行效率,保護軟件不輕易被破解。

案例

一卡易就使用了類似的技術

clip_image002

clip_image004

clip_image006

DEMO

提供一個網頁,內置2個函數,一個供C#調用,一個通過HTTP調用C#

在CEF程序中打開這個網頁,執行相關功能,如下圖:

l 點擊網頁中的第一個按鈕

clip_image008

l 點擊WINFORM中的TOOL菜單 中的測試菜單

clip_image010

clip_image012

點擊頁面中的第三個按鈕,通過AJAX異步HTTP訪問WINFORM

(目前CEF3還不支持直接回調WINFORM,早期的CEF1支持,將來也應該會支持,但是回調不如HTTP訪問靈活)

clip_image014


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM