Chromium 專案資料
The Chromium Projects
.
https://www.chromium.org/Home
.Chromium 專案 官方網站
Chromium Code Search
.
https://source.chromium.org/chromium
.Chromium 程式碼搜尋
Chromium Embedded Framework (CEF) 專案資料
Chromium 嵌入式框架
Bitbucket - Chromium Embedded Framework (CEF)
.
https://bitbucket.org/chromiumembedded/cef/src/master/
.Chromium Embedded Framework (CEF) 官方網站
Chromium Embedded Framework (CEF) Github
.
https://github.com/chromiumembedded/cef
.Chromium Embedded Framework (CEF) 官方Github鏡像
Chromium Embedded Framework (CEF) Automated Builds
.
https://cef-builds.spotifycdn.com/index.html
.包含Linux、Linux ARM、Mac OS X、Windows 32/64位元,預編譯檔案下載
Bitbucket - Chromium Embedded Framework Tutorial
.
https://bitbucket.org/chromiumembedded/cef/wiki/Tutorial
.CEF 使用教程
CEF3 C++ API Docs
.
http://magpcss.org/ceforum/apidocs3/
.CEF3 C++ API 文件
Chromium Embedded Framework Forum
.
https://www.magpcss.org/ceforum/
.CEF 技術論壇
其他資料
Chrome DevTools Protocol
.
https://chromedevtools.github.io/devtools-protocol/
.
https://vanilla.aslushnikov.com/
.Chrome 開發者工具 協議
CEF Windows Visual Studio C++ 開發環境建立
.這裡選用Windows 10 64位元,Visual Studio 14 (2015) C++做示範
.下載 Chromium Embedded Framework (CEF) Automated Builds
https://cef-builds.spotifycdn.com/index.html
選擇 Windows 64-bit Builds,Standard Distribution 版本
下載完成後解壓縮到您想放置的資料夾,這裡使用
c:\cef\ 作範例,CEF版本 85.3.9 ,64位元
確認cmake資料夾有在您放置的路徑下,例如
c:\cef\cmake\
.下載並安裝 CMake
https://cmake.org/download/
.開啟CMake並輸入以下資料
Where is the source code 設定為
c:/cef/
Where to build the binaries 設定為
c:/cef/build/
.按下左下方的
Configure 按鈕(會詢問您是否建立build資料夾,選擇Yes)
Specify the generator for this project 選擇
Visual Studio 14 2015
Optional Platform for generator 選擇
x64
按下
Finish 按鈕後等候執行
.按下左下方的
Generate按鈕,待執行完畢
.按下左下方的
Open Project按鈕,即可開啟CEF Visual Studio C++專案
或者開啟檔案總管到路徑
C:\cef\build\,點選
cef.sln來開啟專案
第一次開啟需較久時間,此時可以先關閉 CMake
.開啟完成後於
方案總管 視窗選擇
方案'cef',按滑鼠右鍵選擇
建置方案 開始編譯,並等待建置完成
.若無法成功建置,則需要開始Debug除錯
.於
方案總管 視窗開啟以下路徑檔案
cefclient > browser > browser_window_std_win.cc
開啟後將搜尋以下字串
const bool no_activate =
GetWindowLongPtr(parent_handle, GWL_EXSTYLE) & WS_EX_NOACTIVATE;
改為
bool no_activate;
if ((GetWindowLongPtr(parent_handle, GWL_EXSTYLE) & WS_EX_NOACTIVATE) != 0)
{
no_activate = true;
}
else
{
no_activate = false;
}
.於
方案總管 視窗開啟以下路徑檔案
ceftests > os_rendering_unittest.cc
另存新檔,並將編碼改為
US-ASCII - 字碼頁20127,覆蓋掉原始檔案
.於
方案總管 視窗開啟以下路徑檔案
ceftests >>> cors_unittest.cc
搜尋
VerifyRequest 函式內的以下字串,將其刪除或改為註解
const std::string& method = request->GetMethod();
.於
方案總管 視窗選擇
方案'cef',按滑鼠右鍵選擇
重建方案 再次編譯,並等待建置完成
.選擇您要測試的專案
cefclient、cefsimple、ceftests,按滑鼠右鍵選擇
設定為起始專案,按下F5開始執行偵錯
.若使用F5開始偵錯時出現
0x800700d8 錯誤
請開啟該專案
屬性頁 視窗(滑鼠右鍵 > 屬性),並前往路徑
組態屬性 > 連結器 > 偵錯
將
產生偵錯資訊 改為
否,即可避免該問題出現
.若還是出現錯誤訊息,請依錯誤碼上網搜尋相關解決方案