一起学libcef--搭建自己的libcef运行环境(Win32程序,错误C2220解决方案)

转自 http://blog.csdn.net/wangshubo1989/article/details/50180413

现在就来讲讲如何在自己的win32程序中搭建libcef运行环境。

首先就是建一个空的win32项目,例如名字为TestLibCef。

1. cefsimple目录(注意是拷贝文件夹)拷贝到新工程下并包含在项目中(注意,是TestLibCef\TestLibCef文件夹下

2. 并在TestLibCef\TestLibCef文件夹下,新建一个dll文件夹 
源码把Debug目录下的文件全部拷贝到该文件夹下()

3. 把resource目录下的文件全部拷贝到该文件夹下(TestLibCef\TestLibCef\dll

4.把include文件夹拷贝到该文件夹下(注意是拷贝文件夹)(TestLibCef\TestLibCef\dll

5.把out\Debug\lib\libcef_dll_wrapper.lib文件拷贝到该文件夹下(TestLibCef\TestLibCef\dll) 
(如果你要发布你的应用程序了,那么你就应该拷贝相应的release目录下的文件)

这个时候,你的dll文件夹是有这些文件: 

6.在工程中添加一些头文件和源文件,如下图: 

7.接下来就是修改工程的属性了,在解决方案下TestLibCef上右键,属性。 
常规页,设置如下: 

8. C/C++下的常规的“附加包含目录”添加如下: 

9. C/C++下的预处理器进行修改,加入如下文件:

_DEBUG
V8_DEPRECATION_WARNINGS
BLINK_SCALE_FILTERS_AT_RECORD_TIME
_WIN32_WINNT=0x0602
WINVER=0x0602
WIN32
_WINDOWS
NOMINMAX
PSAPI_VERSION=1
_CRT_RAND_S
CERT_CHAIN_PARA_HAS_EXTRA_FIELDS
WIN32_LEAN_AND_MEAN
_ATL_NO_OPENGL
_HAS_EXCEPTIONS=0
_SECURE_ATL
CHROMIUM_BUILD
TOOLKIT_VIEWS=1
USE_AURA=1
USE_ASH=1
USE_DEFAULT_RENDER_THEME=1
USE_LIBJPEG_TURBO=1
USE_MOJO=1
ENABLE_ONE_CLICK_SIGNIN
ENABLE_REMOTING=1
ENABLE_WEBRTC=1
ENABLE_PEPPER_CDMS
ENABLE_CONFIGURATION_POLICY
ENABLE_INPUT_SPEECH
ENABLE_NOTIFICATIONS
ENABLE_HIDPI=1
ENABLE_EGLIMAGE=1
__STD_C
_CRT_SECURE_NO_DEPRECATE
_SCL_SECURE_NO_DEPRECATE
NTDDI_VERSION=0x06020000
_USING_V110_SDK71_
ENABLE_TASK_MANAGER=1
ENABLE_EXTENSIONS=1
ENABLE_PLUGIN_INSTALLATION=1
ENABLE_PLUGINS=1
ENABLE_SESSION_SERVICE=1
ENABLE_THEMES=1
ENABLE_AUTOFILL_DIALOG=1
ENABLE_BACKGROUND=1
ENABLE_AUTOMATION=1
ENABLE_GOOGLE_NOW=1
CLD_VERSION=2
ENABLE_FULL_PRINTING=1
ENABLE_PRINTING=1
ENABLE_SPELLCHECK=1
ENABLE_CAPTIVE_PORTAL_DETECTION=1
ENABLE_APP_LIST=1
ENABLE_SETTINGS_APP=1
ENABLE_MANAGED_USERS=1
ENABLE_MDNS=1
ENABLE_SERVICE_DISCOVERY=1
USING_CEF_SHARED
__STDC_CONSTANT_MACROS
__STDC_FORMAT_MACROS
DYNAMIC_ANNOTATIONS_ENABLED=1
WTF_USE_DYNAMIC_ANNOTATIONS=1

10. C/C++下代码生成中,运行库改为“多线程调试MTD”

11. 链接器,常规,附加库目录为: 
因为是VS2015,这个会与VS2013的配置有区别

C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10150.0\ucrt\x86
%(AdditionalLibraryDirectories)

12. 链接器,输入,内容如下:

wininet.lib
dnsapi.lib
version.lib
msimg32.lib
ws2_32.lib
usp10.lib
psapi.lib
dbghelp.lib
winmm.lib
shlwapi.lib
kernel32.lib
gdi32.lib
winspool.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
user32.lib
uuid.lib
odbc32.lib
odbccp32.lib
delayimp.lib
credui.lib
netapi32.lib
comctl32.lib
rpcrt4.lib
opengl32.lib
glu32.lib
D:\test\TestLibCef\TestLibCef\dll\libcef_dll_wrapper.lib
D:\test\TestLibCef\TestLibCef\dll\libcef.lib

13. 链接器,高级,如下图: 

14. 编译生成项目,将dll文件夹中的所有内容拷贝到debug或release文件夹下。

最后完成。

============================================================== 
不出意外,你的程序不会生成成功,会提示C2220错误,你可能Google或是百度,很多人告诉你把警告等级调低,这根本还是解决不了问题。而且良好的编程习惯都是把警告当做错误看待的。

其实可以这样解决问题:

关闭VS2015; 
打开VS2015软件(不点击任何解决方案); 
选择 文件 ->打开 ->项目, 找到之前建立的TestLibCef的sln文件。

成功!! 
至于原因: 
原来文件的代码页为英文,而我们使用的是中文系统。仅此而已。

================================================================ 
很少有人会用纯win32的应用程序,都是采用一些库。接下来将描述,如何在duilib中配置libcef的环境。

时间: 2024-11-05 12:15:52

一起学libcef--搭建自己的libcef运行环境(Win32程序,错误C2220解决方案)的相关文章

centos下搭建.NET Core项目运行环境

centos下搭建.NET Core项目运行环境:https://github.com/Somnus/somnus.github.io/blob/master/doc/code/centos%E4%B8%8B%E6%90%AD%E5%BB%BA.NET%20Core%E9%A1%B9%E7%9B%AE%E8%BF%90%E8%A1%8C%E7%8E%AF%E5%A2%83.md#%E7%99%BB%E5%BD%95%E6%95%B0%E6%8D%AE%E5%BA%93 原文地址:https://

ubuntu 下搭建apache+python的运行环境

ubuntu下怎么搭建apache+python运行环境,可以参考http://www.01happy.com/ubuntu-apache-mod-python/ ,这里只是简单的记录下步骤,本文主要讲一些配置(原文中配置有问题): 1.安装apache:sudo apt-get install apache2 2.安装mod_python模块:sudo apt-get install libapache2-mod-python 3.修改配置文件: 修改/etc/apache2/sites-en

[转]Docker学习笔记之一,搭建一个JAVA Tomcat运行环境

本文转自:http://www.blogjava.net/yongboy/archive/2013/12/12/407498.html 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装.部署和升级,非常方便.因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是 docker 最普遍的一个玩法.更多的玩法还有大规模 web 应用.数据库部署.持续

Docker学习笔记之一,搭建一个JAVA Tomcat运行环境

前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装.部署和升级,非常方便.因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是 docker 最普遍的一个玩法.更多的玩法还有大规模 web 应用.数据库部署.持续部署.集群.测试环境.面向服务的云计算.虚拟桌面 VDI 等等. 主观的印象:Docker 使用 Go 语言编写,用 cgroup 实现

win10本地搭建apache+php+mysql运行环境

首先下载所需软件: Vc2015:https://www.microsoft.com/zh-CN/download/details.aspx?id=48145 Vc2012:http://www.microsoft.com/zh-CN/download/details.aspx?id=30679 Apache2.4:http://www.apachelounge.com/download PHP:http://windows.php.net/download (下载线程安全版的,即Thread

Hadoop环境搭建2_hadoop安装和运行环境

1 运行模式: 单机模式(standalone):  单机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选择了最小配置.在这种默认模式下所有3个XML文件均为空.当配置文件为空时,Hadoop会完全运行在本地.因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程.该模式主要用于开发调试MapReduce程序的应用逻辑. 伪分布模式(Pseudo-Distributed Mode):  伪分布模式在“单节

怎样在mac机器上搭建php的基础运行环境

1,首先Mac OS X 内置了Apache 和 PHP 检测包含php的方法:在终端输入 php -v 检测是否已经有apache:在终端输入sudo apachectl -v sudo apachectl -v 2,在浏览器中输入http://localhost会出现一个html的网页 3,现在我们要配置让它能够显示php网页 在终端中运行"sudo vi /etc/apache2/httpd.conf",打开Apache的配置文件.(如果不习惯操作终端和vi的可以设置在Finde

搭建基于express框架运行环境

1:安装express generator生成器  npm i -g express-generator 查看版本:express --version 2:通过生成器自动创建项目 express server 生成目录如下图所示: app.js是入口文件 app.use('/', index); // 表示访问"/",加载index app.use('/users', users); // 表示访问"/users",加载users 模版中的views实用的jade格

【Node.js】一、搭建基于Express框架运行环境+更换HTML视图引擎

  1)安装express generator生成器 这个express generator生成器类似于vue-cli脚手架工具,用来创建一个后端项目,首先我们要对生成器进行全局安装,在cmd中输入下面命令: npm install -g express-generator 是否安装express generator生成器成功?在命令行工具直接输入一下命令,查看生成器版本 express --version 2)通过生成器自动创建server项目 安装完express generator生成器之