CEF3开发者系列之工程和代码结构

转载:http://www.javashuo.com/article/p-kkuptbuf-br.htmlhtml

 

    CEF支持一系列的编程语言和操做系统,而且能很容易地整合到新的或已有的工程中去。它的设计思想就是易用且兼顾性能。web

      CEF3支持一系列的编程语言和操做系统,而且能很容易地整合到新的或已有的工程中去。它的设计思想就是易用且兼顾性能。其目的是提供一套嵌入式的接口。其主要依赖于公开的Content API来实现的。为了清晰地了解它们之间的的关系,下图描述了WebKit, Content API,Chrome,Content shell和CEF3的层次关系。Chrome浏览器,content shell和CEF3三者都是基于content API开发的,它们只是有不一样的实现,服务于不一样的应用场景而已。shell

      

      图片来源:http://blog.csdn.net/milado_nju/article/details/7455373编程

   工程和代码结构是了解一套代码最基本的入口,了解了代码结构,基本上就知道这套代码要作什么,大致上如何去作的。先看图浏览器

       
  1. cefclient/cefsimple: 包含基于CEF的一个简单应用程序示例,可以使用版本分发中的文件建立。该应用包含了大部分CEF函数的示例。
  2. Debug:包含构建debug 版本的共享库(libcef)和该平台所需的其余支持库。这个应用程序提供建立所需的最小功能浏览器窗口的示例。
  3. Release: 存放release版本的CEF动态库和运行在该平台所需的其余库文件。
  4. include :包含了CEF所需的头文件
  5. libcef_dll :包含 libcef_dll_wrapper静态连接库源代码,使用CEF C++API的应用的必要连接库。
  6. Resource: 包含建立CEF应用须要的源代码,该文件夹还包含.pak文件(全局资源的二进制文件)和和平台相关所需的图片和光标资源

在此处顺便提一句,从cefbuilds.com上下载下的源代码,是没有解决方案文件的,须要用使用构建系统工具,创建解决方案文件sln后就行编译了。具体详见CMake入门以及学习笔记app

在CEF3 3.2272版本(对应chromium 41)以后的cefclient示例里边又分了几个子文件夹:browser、common、renderer、resources。编程语言

  1. browser:包含浏览器进程即当前主进程所用的代码文件。
  2. renderer:包含renderer进程须要的代码文件
  3. common:包含实现主进程和renderer进程的共用文件
  4. resources:主要是测试须要的图片、html文件、pdf文件以及鼠标光标资

 

CEF项目的一些dll和资源做用函数

libcef.dll------------------------->Cef的核心类库工具

icudt.dll-------------------------->支持unicode的类库post

ffmpegsumo.dll--------------------->支持音频和视频的类库

d3dcompiler_43.dll----------------->WinXP下支持3D的类库

d3dcompiler_46.dll----------------->Win7和以后的Win支持3D的类库

libEGL.dll------------------------->加速合成支持库

libGLESv2.dll---------------------->加速合成支持库

locales---------------------------->此文件夹存放了各类国家的语言资源

cef.pak---------------------------->WebKit相关的资源(谷歌浏览器的核心是webkit)

devtools_resources.pak------------->调试器的相关资源

 

顺便说一下,我使用的是CEF3 2.2272版本的,开发环境为VS2008, Win7,这以后的文章和代码都是基于此版本和开发环境。其余版本和开发环境请相应的变通,大致上差很少。

相关文章
相关标签/搜索