創米蛇 CRESNAKE


更新時間: 2021/03/04 14:48
Chromium 專案資料
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 錯誤
 請開啟該專案 屬性頁 視窗(滑鼠右鍵 > 屬性),並前往路徑 組態屬性 > 連結器 > 偵錯
 將 產生偵錯資訊 改為 ,即可避免該問題出現
.若還是出現錯誤訊息,請依錯誤碼上網搜尋相關解決方案
 
標籤:Chromium,Projects,Data,Chrome,Embed,Framework


回到上方