一起学libcef--搭建自己的libcef运行环境(Win32程序,错误C2220解决方案)
现在就来讲讲如何在自己的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的环境。
一起学libcef--搭建自己的libcef运行环境(Win32程序,错误C2220解决方案)相关推荐
- 如何搭建html运行环境,搭建基于express框架运行环境的方法步骤
一.Express简介 Express提供了一个轻量级模块,把Node.js的http模块功能封装在一个简单易用的接口中.Express也扩展了http模块的功能,使你轻松处理服务器的路由.响应.co ...
- 搭建Keras,TensorFlow运行环境
搭建Keras,TensorFlow运行环境 ImportError: DLL load failed,找不到指定的模块 Python环境安装(基本环境是win10+CPU) 安装环境是个需要&quo ...
- ubuntu搭建【python】运行环境
[实施工程师]ubuntu搭建[python]运行环境 目录 [实施工程师]ubuntu搭建[python]运行环境 下载[pycharm]包 解压[pycharm]包 执行[pycharm]安装 ...
- 自动搭建openEuler虚拟机QEMU运行环境
本文介绍了一个自动搭建openEuler虚拟机QEMU运行环境的脚本使用方法,本脚本能下载并安装各种依赖项,自动下载并编译安装QEMU 4.1.1和busybox 1.25.1,下载并安装对Linux ...
- Docker——使用docker工具管理软件/组件的运行,镜像、容器、数据卷的基本概念,常用指令,使用docker搭建Java微服务运行环境
Docker--使用docker工具管理软件/组件的运行,镜像.容器.数据卷的基本概念,常用指令,使用docker搭建Java微服务运行环境 一.docker的安装和卸载 1.卸载 2.安装 3. 导 ...
- 安装oculus运行时出现问题_PS 2021安装失败?运行时提示程序错误?解决办法全在这里...
PS 2021 安装时提示此时无法安装? PS 2021 运行时提示程序错误? 解决办法全在这里! 由于PS 2021的正式版本出来了,所以这几天问紫枫最多的问题就是这两个问题,一个就是在安装过程中提 ...
- 【FFmpeg】Windows 搭建 FFmpeg 命令行运行环境
文章目录 前言 一.下载 FFMPEG 二.拷贝可执行文件 三.拷贝动态库文件 四.运行 ffmpeg 命令 总结 前言 Android 中需要使用到 FFMPEG , 先在 Windows 中搭建一 ...
- tomcat php centeros,linux(center OS7)安装JDK、tomcat、mysql 搭建java web项目运行环境...
一.安装JDK 1.卸载旧版本或者系统自带的JDK (1)列出所有已安装的JDK rpm -qa | grep jdk (2)卸载不需要的JDK yum -y remove 安装包名称 2.下载并解压 ...
- 如何部署搭建app服务端运行环境(java)?
简介: app服务端和web的服务端的配置是一样的.所以要搭建APP根据web服务端配置即可. 前言:app服务端和web的服务端的配置是一样的.所以要搭建APP根据web服务端配置即可. 1.购买服 ...
- 【树莓派不吃灰】基础篇① 半小时搭建树莓派3B可运行环境(不需要显示器,不需要网线)
目录 1. 前言 2. 折腾树莓派需要什么 3. 搭建Raspberry Pi树莓派可运行环境(不需要显示器,不需要网线) 3.1 下载树莓派镜像下载器 3.2 选择对应版本系统镜像,配置wifi热点 ...
最新文章
- 如何理解 Web API
- 牛客竞赛语法入门班数组模拟、枚举、贪心习题【未完结】
- Windows Azure Tools DSInit Error
- rest_framework05:GenericAPIView用法/扩展类5个/子类9个/ViewSetMixin 自定义方法名字
- Goroutine(协程)为何能处理大并发?
- 20171103_Python学习三周五次课
- mysql编译方式查询_源码编译mysql及其各种查询总结
- “一天搞懂深度学习”笔记
- 【千律】C++基础:使用动态数组vector初始化自定义类
- 多弹多约束协同制导问题
- 以漫画的形式描述联邦学习
- android.mk 条件编译,android openSSL 的苦逼历程
- “21 天好习惯”第一期-6
- SpringCloud微服务项目实战 - 2.App登录及网关
- 大数据告诉你中老年人上网爱干什么
- c++整人代码,超级加倍,让人承认我是大傻猪
- r语言算巢式设计方差分析_R语言中的方差分析方法汇总
- 一篇文章,讲透“复盘”
- Python爬虫学习笔记-第十一课(selenium下)
- BACnet协议详解——应用层说明二
热门文章
- wmic java_wmic 命令用法及实例
- ios 版手机迅雷的安装方法
- 学生成绩分析之成绩的预处理 python3 pandas 学生成绩汇总到一张表
- android 免root 免流,安卓无需Root一键免流软件合集,具体哪个能用自测
- Mac OS 打开 NTFS 读写功能
- 1分钟教会你如何截图文字识别,建议收藏备用
- 构建请求header fake_useragent安装以及解决方法
- .net Core 3.1下的Roslyn 动态编译
- 测绘乙级摄影测量与遥感专业资质需要用到这些人员
- 易语言如何注入 c dll,易语言注入dll调用函数的方法