浅谈Qt中使用CEF的几个要点(Windows下)

发布时间 - 2026-01-11 02:26:22    点击率:

最近项目中要在Qt中使用CEF(Chromium Embedded Framework),在这里总结下其中的几个要点。

下载合适的CEF版本

关于CEF的简介我们这里就不做介绍了,下载CEF可以有2种选择:

1、源码:强烈不建议下载源代码并编译构建(学习代码除外),下载源码需要你FQ、有良好的网速(要下载)和足够的耐心(据说有4、5个G,真的要下半天)。

2、自动构建版本:推荐这个使用这个版本。该版本提供了大部分已经编译完成的动态库及资源,只需要开发者手动编译一个wrapper静态库就可以了。这种版本分为当前发行分支(Current Release Branches)和遗留发行分支(Legacy Release Branches ),每个分支都有其编译要求,最低支持WinXp。

使用CMake和VS编译wrapper静态库

调用CMake来生成一个对应的VS工程,然后用VS打开并编译,这是windows下最方便的方法(配置CMake来编译的方法比较麻烦,不推荐)。以下是具体步骤:

安装VS和CMake(32位)

下载并提取自动构建版本的CEF压缩包。

打开VS的开发者命令提示行,cd到解压后的根目录中(包含README.txt的目录)。

运行命令cmake -G "Visual Studio 14"(14对应VS2015,12对应VS2013),该命令会在根目录下生成cef.sln文件。

双击cef.sln,用VS打开该项目。

确保自己的Qt和CEF版本一致

运行库版本一致。使用CEF库时要保证整个程序的运行库链接版本是一致的,也就是说Qt静态库和CEF库必须用同一个运行库选项编译。但这里至关重要的一点就是CEF(自动构建版本)库的libcef.dll等动态库都是用/MT选项预编译好的(至少我试过的好几个CEF自动构建版本都是开启/MT编译的),我们只能更改Qt库的版本,可以考虑替换这些冲突的版本,重新编译或下载对应版本都是不错的选择。

Debug/Release模式一致。否则的话,会出现_ITERATOR_DEBUG_LEVEL等一系列错误。

WinXp支持

只有比较老的CEF分支版本支持WinXp系统,而自动构建版本只支持Win7及以上,因此除了从源码编译外,你是没有办法从官方获取CEF的WinXp支持的。嗯,然后源码编译也不现实,只能向别人要了。

文档支持

CEF的文档不是与QT一个级别的,因此不要指望能很快上手,写代码前你最好把API以外的文档全看一遍。

以上这篇浅谈Qt中使用CEF的几个要点(Windows下)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# Qt  # CEF  # Qt图形图像开发之曲线图模块QCustomplot库生成静态、动态曲线详细教程图解  # Qt图形图像开发之高性能曲线图模块QCustomplot库详细使用方法与实例(支持动、静曲线图)  # Qt学习教程之对话框消失动画效果  # Qt学习教程之表格控件蚂蚁线详解  # Qt 使用Poppler实现pdf阅读器的示例代码  # Qt实现保存、浏览、预览、打印功能的示例代码  # QT开发应用程序的欢迎界面实例  # QT网络编程Tcp下C/S架构的即时通信实例  # 在QT5中实现求两个输入值的和并输出(实例)  # QT网络编程UDP下C/S架构广播通信(实例讲解)  # 深入理解Qt中各种消息框对话框的使用  # Qt实现FTP的上传和下载的实例代码  # Qt如何设置窗口屏幕居中显示以及设置大小  # Qt图形图像开发之曲线图表库QChart编译安装详细方法与使用实例  # 都是  # 几个  # 给大家  # 运行库  # 文档  # 自己的  # 下半天  # 这是  # 也不  # 都有  # 在这里  # 你是  # 会在  # 要在  # 一遍  # 希望能  # 不做  # 只需要  # 没有办法  # 双击 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  如何挑选最适合建站的高性能VPS主机?  南京网站制作费用,南京远驱官方网站?  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  微信小程序 canvas开发实例及注意事项  Laravel如何与Pusher实现实时通信?(WebSocket示例)  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  EditPlus中的正则表达式实战(6)  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  大连 网站制作,大连天途有线官网?  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  Laravel中的withCount方法怎么高效统计关联模型数量  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  Laravel如何使用.env文件管理环境变量?(最佳实践)  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  JS去除重复并统计数量的实现方法  标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  如何在云虚拟主机上快速搭建个人网站?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  音响网站制作视频教程,隆霸音响官方网站?  Python高阶函数应用_函数作为参数说明【指导】  Laravel如何使用withoutEvents方法临时禁用模型事件  WordPress 子目录安装中正确处理脚本路径的完整指南  教你用AI将一段旋律扩展成一首完整的曲子  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  iOS发送验证码倒计时应用  Laravel如何配置和使用缓存?(Redis代码示例)  Laravel如何使用Telescope进行调试?(安装和使用教程)  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  如何在云服务器上快速搭建个人网站?  微信小程序 input输入框控件详解及实例(多种示例)  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  Android仿QQ列表左滑删除操作  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  EditPlus中的正则表达式 实战(1)  如何确保FTP站点访问权限与数据传输安全?  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  Laravel如何处理表单验证?(Requests代码示例)  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  简单实现Android验证码  香港服务器租用费用高吗?如何避免常见误区?