<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                CEF,Chromium Embedded Framework的縮寫。CEF 的官網介紹的很簡潔:A simple framework for embedding chromium browser windows in other applications。具體地說就是一個可以將瀏覽器功能(頁面渲染,JS 執行)嵌入到其他應用程序的框架。感興趣的看這里:[https://bitbucket.org/chromiumembedded/cef](https://bitbucket.org/chromiumembedded/cef)。 用CEF的好處是開發Web和Native混合的應用非常方便,比調用Windows的ie組件要好得多,最起碼可以隨應用攜帶一個穩定版本的Chrominum,而ie版本太多,你的應用很依賴用戶的操作系統,各種兼容性的坑…… 花了大半天時間,終于跑通了cefsimple這個小示例。記錄下過程。 # 工具 我的搭配: - VS 2013 - [CMake 3.4.1](https://cmake.org/download/) - CEF 3.2357.1271([CSDN下載頻道的binary包](http://download.csdn.net/detail/zhang116868/8750429)) 我把CEF Binary for windows解壓到了這個目錄:D:\projects\cef_binary_3.2357.1271.g8e0674e_windows32,下文我們用CEFDIR來代替它。 現在的CEF Binary里沒有VS項目和解決方案了,得自己生成。 # 環境配置與編譯過程 cefsimple示例依賴libcef_dll_wrapper,需要先編譯libcef_dll這個項目。 ### 編譯libcef_dll 1. 到[https://cmake.org/download/](https://cmake.org/download/)下載CMake 3.4.1(cmake-3.4.1-win32-x86.zip) 1. 解壓到某個目錄,我這里是E:\software\cmake-3.4.1-win32-x86,后面有用 your-cmake-dir指代。打開命令行(cmd.exe),執行“set path=your-cmake-dir/bin;%path%”命令。 1. 切換到CEFDIR/libcef_dll目錄,執行“CMake .”命令,生成VS 2013的項目文件和solution文件 1. 使用VS 2013打開CEFDIR/libcef_dll目錄下的Project.sln,選中libcef_dll_wrapper這個項目,打開項目屬性,設置C++附加包含目錄,把CEFDIR目錄添進去 1. 選中libcef_dll_wrapper,鼠標右鍵,屬性–>配置屬性–>C/C++–>預處理器定義,編輯,新增一個NOMINMAX宏。這是為了解決std::min/std::max和VC全局定義的min/max宏沖突。libcef_dll里有些cc文件內用了std::min/max模板函數,不添加NOMINMAX,可能出現C2589和C2059錯誤 1. Debug版本,運行庫選擇“多線程調試(MTd)”;Release版本選擇MT。 1. 編譯,生成libcef_dll_wrapper.lib文件 1. 把libcef_dll_wrapper.lib放到CEFDIR/Release(或Debug)目錄下 我編譯中遇到了一些錯誤,找到了解決辦法,已經包含在上面的步驟里了。 ### 編譯cefsimple示例 有了libcef_dll_wrapper,就可以編譯cefsimple了。 我本來想用CMake生成,結果折騰半天,CMake執行過了,卻沒生成對應的cefsimple.vcxproj……只好手動創建了一個VS項目。 過程如下: 1. 自己創建一個cefsimple項目,Win32類型,空項目 1. 將cefsimple_win.cc,simple_app.cc,simple_handler.cc,simple_handler_win.cc作為源文件添加到項目里 1. 將resource.h,simple_app.h,simple_handler.h作為頭文件添加到項目里 1. 設置附加包含目錄,把CEFDIR目錄加進去 1. 設置附加庫目錄,CEFDIR/Release(或Debug) 1. 添加附加依賴項,把libcef_dll_wrapper.lib、libcef.lib、DbgHelp.lib加進去 1. simple_app.cc中的www.google.com替換為www.baidu.com(Google打不開啊……) 1. Debug版本,運行庫選擇“多線程調試(MTd)”;Release版本選擇MT。注意這里的選擇,和libcef_dll要一致,不然會出鏈接錯誤 1. 把工作目錄設置為CEFDIR/Release(或Debug) 1. 編譯運行 運行時可能會Crash,把CEFDIR/Resources目錄下的內容拷貝到CEF/Release(或Debug)下即可。CEF需要里面的icudtl.dat、語言文件等。 運行效果如下圖: ![cefsimple效果圖](https://box.kancloud.cn/2016-02-22_56caac2b80dff.jpg "") CEFDIR目錄下有個README.txt文件,一定要看,我編譯通過后運行總crash,在VS一點一點Debug、看程序輸出,花了老長時間才發現時Resources的問題! Ok,環境就這樣好了,接下來可以研究CEF的SDK了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看