使用Libcef建立基於瀏覽器的應用程式(1)

2022-08-21 02:00:13 字數 1878 閱讀 8381

很早之前看過關於豌豆莢的一片報道,說豌豆莢花了10個月的時間,使用c++重新實現。其介面完全採用html實現。本人之前都是使用mfc開發windows介面,為了達到要求的介面效果,我花了大量的時間在介面重繪和貼圖上,所以一聽說居然還有人這麼搞,無比激動。熟悉mfc開發的朋友們都知道,win32 api來實現介面效果,工作量是很大的,往往乙個按鈕半透明效果都能把你折騰個半死,而且極容易出錯。但是如果直接在應用程式中,直接嵌入ie控制項是有問題的,因為ie版本差異太大,對html5支援很難保證,而使用html開發介面的核心就是htmel5的那些很炫的功能。最好能把瀏覽器控制項一起打包發布,這樣可以完全不用系統的ie版本,只要支援一種瀏覽器就行,這樣可以大大節省web開發的精力。

第一次關注libcef是因為,我乙個在杭州實習的朋友,回學校一起交流的時候跟我說過,網易雲**使用最新的介面架構,使用的chrome那一套。我第一反應就是安裝乙個試試看,發現可執行檔案目錄下帶有libcef.dll這個檔案,遂搜尋了一下,發現這正是實現純html介面所需要的東西,而且這貨居然支援離屏渲染(off-screen render),可以把渲染事件**出來。這東西配合windows下的層疊視窗,就可以實現完全用html+css定義整個介面。試想,平時最蛋疼的視窗圓角,陰影,和透明效果,不用寫一行貼圖**就能實現,這簡直是帥到爆有木有!!

廢話不多說,本篇介紹將libcef專案的基本配置。

1,在cefclient2010解放方案上右鍵,新建專案,選擇win32專案,輸入專案名稱,點完成。

2,點選下一步

3,選擇win32 專案,點選完成

自此,解決方案中總的就有三個專案了。此時解決方案目錄情況如下:

1,由於我們在解決方案中建立專案,自動會在sln的資料夾下面,建立以專案名稱命名的專案資料夾,所以include目錄就在父目錄中,設定包含為父目錄,方便引用到cef的標頭檔案。

2,將debug和release的執行庫分別設定為mtd和mt

3,去除預編譯頭

4,將cefclient的附加庫複製到本專案中

5,複製cefclient的附加依賴項,並黏貼到我們自己的專案中

至此,專案配置好了,接下來要拷貝一些依賴的標頭檔案和庫檔案,還有語言包。

1,開啟專案檔案加下的out目錄

2,把debug的如下檔案複製到我們專案的debug輸出目錄,把release的如下檔案複製到我們專案的release輸出目錄

使用瀏覽器Cookie

cookie是有netscape瀏覽器1.0版引入的。netscape 的開發人員發明了cookie。1.cookie 是如何工作的?web伺服器建立乙個cookie時,乙個附加的http頭部在瀏覽器顯示頁面時被傳送到瀏覽器。http頭部類似如下形式 set cookie message hello...

基於Qt Creator的簡易瀏覽器

本人第一次寫關於qt的專案,有很多不足之處,大神就一笑而過就好了!接下來,進入主題,我今天帶來自己寫的簡易瀏覽器 1.建立工程 帶ui介面 條形框中可以直接輸入初始網頁的 3.新增乙個載入網頁的槽函式 private slots void loadurl 讀取位址載入 函式實現 ui webview...

瀏覽器 瀏覽器高效搜尋

一 常見場景 以場景的形式來說明 1 場景1 網路上查詢一本書的 指定文件型別 如pdf 如 搜尋關鍵字 c primer plus 的 pdf 版本 輸入 格式 關鍵字 空格 filetype pdf 例項 c primer plus中文版 filetype pdf關鍵字 filetype 2 場...