基於CefGlue的桌面應用開發

2022-07-21 18:39:13 字數 715 閱讀 8049

如果你想使用web技術來開發桌面客戶端,並且是想使用的語言也是c#時,那請耐心往下看。使用web技術開發桌面客戶端的核心其實就是使用乙個能夠獨立執行web前端的元件,如winform中的webbrowser,android平台的webview,以及qt提供的webview,等等。對於桌面客戶端開發而言,使用webbrowser空間依賴於客戶端安裝的ie瀏覽器版本,而且ie本身的種種詬病讓人望而生畏。而如今,chrome瀏覽器突飛猛進的發展大家有目共睹,而且其使用的核心 cef 和webkit一樣是開源的。由於chromium是c/c++開發的,想要在c#中使用需要再次封裝,一些基於chromium的瀏覽器控制項便應運而生。如今,市面上存在的基於chromium的c#封裝有:

關於這幾個專案的優劣, 牛a與牛c之間 做了非常細緻的比較,請參看 .net多種webkit核心/blink核心瀏覽器初步測評報告 。最終優勝的為 xilium.cefglue 。此前,本作者使用過 cefsharp ,感覺很明顯的優點是js和c#之間的互調非常方便,由於本作者只是使用cefsharp開發乙個小工具,所以效能和發布方面的問題暫時未碰到。

值得一提的是cef有兩個版本cef1和cef3。

我們選用的是cef3和xilium.cefglue,xilium.cefglue是對cef專案的.net的包裝,它是用p/invoke的方式來呼叫cef類庫的,請參見:

下面我們就 xilium.cefglue 開發桌面應用中需要解決的問題逐一分析。

**:

Web桌面應用框架2 著名的WEB桌面應用分析

前一篇文章裡,分析了包括nw.js和electron這種純js框架在內的幾種web桌面應用開發方式,實際上還有一種最古老的方式,那就是嵌入webview的方式。嵌入webview的方式和整個程式都是web視窗不同,僅在視窗的部分子視窗使用webview,和原生ui或directui結合的方式。這種在...

基於mpvue開源 基於成就而不是年齡的開源成就

基於mpvue開源 lauren egts是一位熱愛技術的學生。她教孩子們和成年人有關計算機程式設計的知識,並在本地mini maker faires和akron linux使用者組上介紹raspberry pi和scratch 她已經加入了海瑟薇 布朗學校的科學,研究與工程計畫,並且是學校機械人團...

虛擬桌面中的虛擬應用

在給使用者推薦虛擬桌面時,往往會介紹到應用程式的部署 管理問題。而針對不同的提供商都有不同的解決方法 4 部署 管理複雜度較高 5 某些特殊應用程式支援有限 優點 1 可動態按使用者需求交付應用 交付方式 1 離線 完全與os隔離 流 應用方式,僅占用客戶端資源。2 可保證資料高安全性 借助虛擬桌面...