当前位置 博文首页 > lengyue2015的博客:CEF3嵌入到win32项目

    lengyue2015的博客:CEF3嵌入到win32项目

    作者:[db:作者] 时间:2021-07-26 14:54

    一、编译CEF3源码

    ? ? ?编译源码请参考:https://blog.csdn.net/lengyue2015/article/details/77972035

    二、创建一个win32项目

    ? ? ?这里我创建了一个TestCef名称的项目,如图所示:

    ? ? ?

    三、准备cef3头文件

    ? ? ??然后我们将刚才我们编译的cef3源码路径下的include文件夹拷贝到我们的项目路径下,如图所示:

    ? ? ?

    ? ?这里include目录下面是我们项目需要使用的cef3相关的头文件。

    四、引入lib库

    ? ?在我们的项目源码路径下创建lib文件夹,lib文件夹分别创建debug和release两个文件夹,如图所示:

    ? ?


    然后我们将编译好的debug和release版本的libcef_dll_wrapper.lib库拷贝到上面debug、release两个文件夹中,由于

    libcef.lib库是谷歌已经给我们编译好的,我们直接就可以使用,将libcef.lib也拷贝到相应的文件夹中,如图所示:



    五、配置项目库路径

    ? ? ?这里我们要配置cef3的库路径,右键项目-》属性-》连接器-》常规-》附加库目录,这里输入lib\debug,如图所示:

    ? ? ??

    然后选择输入-》附加依赖项,然后输入libcef.lib、libcef_dll_wrapper.lib两个库,如图所示:

    ? ? ??

    六、代码生成配置

    ? ? 项目属性-》C/C++-》代码生成-》运行库,然后选择多线程调试(/MTD),如图所示:

    ? ??

    七、编写代码

    ? ? ? 我们新建两个类TestCefAPP和TestCefHandler,代码如下:

    #pragma once
    #include "include/cef_app.h"
    
    class TestCefAPP : public CefApp,public CefBrowserProcessHandler
    {
    public:
    	TestCefAPP(void);
    	~TestCefAPP(void);
    
    	// CefApp methods:
    	virtual CefRefPtr<CefBrowserProcessHandler> GetBrowserProcessHandler()
    		OVERRIDE { return this; }
    
    	// CefBrowserProcessHandler methods:
    	virtual void OnContextInitialized() OVERRIDE;
    
    private:
    	// Include the default reference counting implementation.
    	IMPLEMENT_REFCOUNTING(TestCefAPP);
    };

    cs