QT集成CEF02-编译libcef_dll_wrapper_vs+qt项目中如何使用libcef_dll_wrapper.dll-程序员宅基地

技术标签: qt  QT一步一步集成CEF  visual studio  开发语言  

进行这个步骤前,先完成 《QT集成CEF01-准备工作》

1. 准备

新建一个文件夹,比如 e:\cef_win32,并在这个文件夹下创建一个 src目录,然后将下载的cef二进制包全部拷贝到这个目录中
在这里插入图片描述

2. 使用cmake

打开cmake-gui.exe 在下载好的cmake文件夹中

在这里插入图片描述

2.1 选择源码所在的目录

E:/cef_win32/src 就是下载的cef所有的文件

2.2 cmkae 编译以后生成的文件存放的目录

E:/cef_win32 cmake运行后生成文件存放的目录
在这里插入图片描述

2.3 执行cmake的 Configure

在这里插入图片描述
在这里插入图片描述

这里去掉 USE_ATL 和USE_SANDBOX这两个选项.

连续点击"configure" ,红色框框消失

执行后会生成文件:
在这里插入图片描述

2.4 执行 Generate

会生成 VS 2019 的项目解决方案文件:
在这里插入图片描述

2.5 VS 2019 打开cef.sln

在这里插入图片描述

3. 编译 libcef_dll_wrapper

libcef 动态链接库导出 C API 使得使用者不用关心CEF运行库和基础代码。libcef_dll_wrapper 工程把 C API 封装成 C++ API同时包含在客户端应用程序工程中。

在编译libcef_dll_wrapper之前,先修改“运行库”配置,分别对 “Debug"和"Release” 进行修改:

Debug 默认的是 /MTd, 修改为 /MDd

Release默认的是 /MT, 修改为 /MD

在这里插入图片描述

修改的原因是:QT项目采用的是 (Release) /MD ,(Debug) /MDd ,我们的目标是要在QT项目中集成,所以要在连接的运行库的时候,采用 /MD (Release) 或/MDd (Debug)
在这里插入图片描述

4. 编译cefsimple示例程序

示例程序中浏览器默认打开的是 http://www.google.com, 修改为 https://www.baidu.com
在这里插入图片描述

然后编译:

在这里插入图片描述

然后打开文件夹,Debug中就是生成的示例程序:

在这里插入图片描述

运行cdfsimple.exe可以运行程序:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sCazioRk-1638617810501)(assets/image-20211118140931331.png)]

5. 编译cefclient示例程序

在这里插入图片描述

6. HTML5支持检测

打开cefclient.exe 后,输入http://html5test.com/ 可以进行HTML5支持的检测。发现有些音视频格式无法支持

如果需要支持,需要打开一些编译选后,从源码重新编译后生成 二进制发行包
在这里插入图片描述

地址栏中输入: chrome://version 可以查看浏览器版本信息

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/paopao_wu/article/details/121720452

智能推荐

Extjs4 表格式例子(2)-程序员宅基地

文章浏览阅读96次。ExtJs Grid: "Remove Selected Record" Toolbar ButtonExt.onReady(function () { Ext.define('Ext.ux.DeleteButton', { extend: 'Ext.button.Button', alias: 'widget.delbutton', ..._extjs4 widgetcolumn

Pycharm运行.py文件报错Cannot find remote credentials for target config com.jetbrains.plugins.remotesdk.tar-程序员宅基地

文章浏览阅读1.9k次,点赞8次,收藏3次。网上也有针对这个问题的其他的解决方案,如在 Tools > Deployment > Configuration 中的 Visible only for this project 取消勾选,但我本来也没勾选这个选项,所以对我而言完全没有用。这里提供给有需要的同学参考。这里提供给有需要的同学参考。_cannot find remote credentials for target config com.jetbrains.plugins.remot

python 装饰器-程序员宅基地

文章浏览阅读26次。本文已参与「新人创作礼」活动,一起开启掘金创作之路• 闭包:是由函数及其相关的引用环境组合而成的实体。• 不同编程语言实现闭包的方式是不同的,Python中闭包从表现形式 上看,如果在一个内部函数里,对在外部作用域(不是在全局作用 域)的变量进行引用,那么内部函数就被认为是闭包。• 闭包中不可以直接修改外部函数的局部变量。 – 类似于不能直接在函数中修改全局变量(可变类型除外),需..._神光棒用python

class mate_class meta:-程序员宅基地

文章浏览阅读1.8k次。class mate_class meta:

冲销凭证BAPI_ACC_DOCUMENT_REV_POST封装FUNCTION_abap bapi_acc_document_rev_post-程序员宅基地

文章浏览阅读1.8k次。FM: ZF_FI_ACC_DOC_REV_POSTFUNCTION ZF_FI_ACC_DOC_REV_POST.*"----------------------------------------------------------------------*"*"本地接口:*" IMPORTING*" REFERENCE(IV_BUKRS) TYPE BKPF-BUK..._abap bapi_acc_document_rev_post

java防注入代码_JAVA中防止SQL注入攻击类的源代码-程序员宅基地

文章浏览阅读301次。JAVA-字符串过滤类package cn.com.hbivt.util;/*** Title: ** Description: ** Copyright: Copyright (c) 2005** Company: ** @author not attributable* @version 1.0*/public class StringUtils {//过滤通过页面表单提交的字符private..._java防止命令注入代码

随便推点

清华申请退学博士作品:完全用Linux工作_windows linux 清华退学-程序员宅基地

文章浏览阅读2.9k次。按: 尽管我们已经不习惯看长篇大论, 但我还是要说, 这是一篇值得你从头读到尾的长篇文章.2005年9月22日,清华在读博士生王垠在水木社区BLOG上发表了《清华梦的粉碎--写给清华大学的退学申请》明确要求退学, 引起社会各界广泛争论. 他创作的长篇文章《完全用Linux工作》, 洋洋两万多字, 从不同角度居高临下的阐述了他眼中Linux完全优越于Windows的各种理由, 这篇文章并不简单的是一_windows linux 清华退学

SmartForms 之二--设计_smartforms style standard paragraph is not filled-程序员宅基地

文章浏览阅读946次。 文章原址为:http://www.cnblogs.com/zhumk/archive/2005/06/04/167904.htmlABAP:SmartForms 之二--设计 报表要求:(见下表)要求:1、不是套打,表格线也需要输出2、每张报表打印8行记录,不足的空白行也需要输出3、按凭证号打印单据,可以连续打印多张报表。 一、创建样式:在创建Form之前,需要创建多种段落_smartforms style standard paragraph is not filled

Hive函数:row_number() over() 、 rank和dense_rank_row_number() over()和rank-程序员宅基地

文章浏览阅读1.4k次。row_number() over()为查询出来的每一行记录生成一个序号。序号从1开始,按照顺序,生成分组内记录的序列,row_number()的值不会存在重复,当排序的值相同时,按照表中记录的顺序进行排列。示例:利用row_number函数,对表中的数据根据id进行分组,按照pv倒序排序求最大的pv相关信息。select t.id, t.date, t.pvfrom(selectid,date, pv, row_number() over(partition by id ord_row_number() over()和rank

Java 创建一个快捷窗口 用于监控文件夹与打开文件夹_jframe 打开文件夹-程序员宅基地

文章浏览阅读430次。【代码】Java 创建一个快捷窗口 用于监控文件夹与打开文件夹。_jframe 打开文件夹

html中table监听修改事件,监听element-ui table滚动事件的方法-程序员宅基地

文章浏览阅读745次。背景做管理平台的项目,用到了element-ui,需要通过监听el-table滚动的位置来获取最新的数据,那么怎么样监听el-table的滚动呢?准备我们默认的技术栈是 vue+element-uitemplate代码::data="logList":show-header="false"row-class-name="table-row-class"height="700"ref="table"..._html监听表格加载事件

币须知道 |日本计划更改加密货币累进税为统一税率,土耳其拥有加密货币比例位居欧洲国家之首...-程序员宅基地

文章浏览阅读421次。您的转发和吐槽是我们前进的动力今日要闻 监管要闻·俄罗斯军方将利用区块链技术追踪黑客攻击的来源·日本计划更改加密货币累进税为统一税率·四川省委全体会议决定积极探索区块链发..._波洛莱物流 阿里巴巴

推荐文章

热门文章

相关标签