
CFE 簡介
CEF(The Chromium Embedded Framework) 是 Marshall Greenblatt 于2008年基于 Google Chromium 項目創(chuàng)建由BSD開源協議授權的開源項目。它和Chromium項目不同之處在于,Chromium項目側重于 Google Chrome 應用開發(fā),而CEF側重于使瀏覽器更容易內嵌到第三方應用中。CEF 屏蔽了 Chromium 和
Blink 代碼的復雜性,在 Chromium Content API 之上提供了一套友好且穩(wěn)定的API,開發(fā)者只需要在 CEF API 的基礎上就能很容易地建立起基于CEF的應用。了解更多關于CEF的內容,請參考CEF官網。
準備編譯環(huán)境
CEF 官網提供了兩種發(fā)布方式:二進制發(fā)布和源碼發(fā)布。二進制發(fā)布包含了基于CEF開發(fā)的應用程序所依賴的所有二進制文件和頭文件。本文主要講CEF的二進制發(fā)布,官網提供了較新版本的二進制發(fā)布包,下載地址在這里, 選擇一個合適的版本(在寫本文是,最新版本是3202)。編譯CEF需要依賴以下編譯環(huán)境:
- OS:Win7 +
- Visual Studio: VS2015u3 + Win10.0.14393 SDK + Ninja
- CMake: version 2.8.12.1+
需要注意的是安裝VS2015u3的時候,默認是不會安裝Win10.0.14393 SDK 的,所以需要你手動勾選;
CMake 可以去CMake官網下載 Windows安裝版本。
編譯
CEF 支持多平臺 (Windows, MacOS, Linux), 以CMake作為構建工具。的使用cmake命令之前,需要先設置cmake的環(huán)境變量:
- 找到cmake的安裝目錄,Win7 64bit 默認在C:\Program Files (x86)\CMake
- 控制面板 > 系統 > 高級系統設置 > 環(huán)境變量 > 系統變量 > Path
- 添加 cmake 安裝目錄下的bin目錄,如C:\Program Files (x86)\CMake\bin
將下載好的二進制發(fā)布包解壓到合適的目錄,如 E:\
- 進入CEF目錄,如:E:\cef_binary_3.3202.1674.g2a991c4_windows32
- 的該目錄下打開控制臺cmd, 輸入cmake . 生成cef.sln工程文件
- 用vs2015打開cef.sln進行編譯

在編譯ceftests的時候你可能會出現以下錯誤:

warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss.
正如編譯錯誤中提示的信息,這是由于os_rendering_unittest.cc中由包含有不能被當前代碼頁識別的字符。只需要更改該文件的編碼方式就行了:
- vs 中打開os_rendering_unittest.cc文件
- File > Advanced Save Options > Unicode (UTF-8 with signature) - Codepage 65001
- 保存 > 重新編譯
運行
進入tests\cefclient\Debug, 命令行執(zhí)行:
cefclient.exe --url=https://www.baidu.com
