FFmpeg 4.3 音视频-多路H265监控录放C++开发三 :安装QT5.14.2, 并将QT集成 到 VS2019中。
一,安装QT,
重点:在安装QT的时候要安装msvc201x版本的组件,


二 , 安装 qt-vs-tools
Index of /development_releases/vsaddin/2.8.1

三,需要安装过 windows10 SDK,一般我们在安装vs2019的时候就已经安装过了,如果没有,则要单独安装一下 windows10 SDK
安装版本是: 20348.1.210507-1500.fe_release_WindowsSDK
地址在:
Windows SDK和模拟器存档 | Microsoft Developer


要记住你安装的 这个地址,后面要用:
默认安装在 C:\Program Files (x86)\Windows Kits\10

安装前该目录的图片:一共17个项目






在 x86 和 x64的目录下都会有一个cdb.exe的可执行工具

这个cdb.exe 是干啥的呢? 就是用来在vs 中 debuger QT 项目用的,
如何使用?需要在 qt 中配置。
打开QT crteator

我们看到在 Debuggers中看到的三个关于debugger 的 都是GDB 的,我们要把cdb.exe 这个配置进去。



四。使用QTCreator 创建一个QT项目,顺便看一下再大型项目中,公司一般是如何组织项目结构的。
4.1 假设我们公司的这个项目叫做001project,001project上一级目录叫做vsqtcode。
那么一般我们会先建立这个上一级目录,也就是建立vsqtcode 的文件夹。然后再vsqtcode文件夹下创建如下的目录: src,bin,doc,lib,include

然后打开QTCreator 创建一个项目,注意我们的项目的创建路径是在 src 的目录下。


目录结构如下。

五 一些文件的说明:
001project.pro.usr 存放了QT 的环境,也就是说,这个项目build 出来用的什么编译器,例如当前指定的是啥
001project.pro 文件里面存放了要使用的类,要引用的第三方库,要使用的C++版本等,最终会被qmake工具 build pro 生成makefile文件,最后再使用makefile build 生成exe 文件
ui_mainwindow.ui 这个文件实际上是根据开发者 在UI上的操作转化为 c++ 的代码001project.pro
moc_widget.cpp 所有的信号槽怎么关联起来的
六。使用VS + qt 项目配置
前提是你已经安装了 qt-vs-addin-msvc2017.vsix.
包含如下问题要fix:
输出,调试,库,头文件设置
控制台打开
修改引用的QT库
修改解决方案的QT版本
将vs 项目导出为 QTCreator 项目。
一般就是在windows 上使用vs 开发完成QT项目后,要移植到 linux 或者mac ,linux 和mac 是没有vs 的,因此要将vs 项目 导出为 QTCreator 项目,以方便移植。
1.创建一个vs 项目,如果前面的qt-vs-tool 安装过,那么就可以看到 QT VS Tools

2. 配置vs 中 QT 的版本


3. 新建一个项目





4. 配置项目

配置属性--->常规--->输出目录 (生成的 exe 程序放置在 bin 下)
所谓的输出目录,应该就是生成的 可执行程序.exe 放在哪里
..\..\bin

配置属性--->调试--->工作目录 (调试的 exe 程序在bin 下)
既然上面的输出目录是(也就是 exe 程序放在了..\..\bin 下),那么我们调式的 工作目录应该和 exe程序放置的目录一样,也写成 ..\..\bin 。 当然也可以不放在一起,但是后续问题很多,放在一起可以避免很多问题。
..\..\bin

配置属性--->C/C++--->常规 --->附加包含目录 (include 第三方头文件)
我们要把需要的头文件的放在 include 文件夹下,到这时候我们还没有创建include文件夹,按照目前思路,我们应该和bin,src 在同一级下,才合理
..\..\include

配置属性--->链接器--->常规--->附加库目录 (第三方静态库 动态库放置的四方)
链接器--->常规--->附加库目录 指定,文件在链接的时候去找那个目录,
由于我们的目录设计就是放在
配置属性--->链接器--->输入---> 附加依赖项 中 指定具体的那个lib文件。
..\..\lib


配置属性--->链接器--->系统--->子系统

七,将在vs 上的QT 项目 转换成 能在QT 上单独使用的QT 项目





然后用 QTCreator 去打开这个pro文件

八。一些问题:VS打开Qt的ui界面几秒后闪退
VS打开Qt的ui界面几秒后闪退(ui无法打开文件)的解决办法
问题:
近两天在vs中直接点解ui界面,自动调用Qt Designer打开界面几秒后Designer界面闪退,回到vs界面,并有“——.ui无法打开文件”的错误提示。
这个问题应该是Windows或Qt哪些东西更新造成的,用Qt的几个同学都有反应这个问题。
解决方法:
注:软件版本:VS2019+ Qt5
方法一(评论区网友提供,操作比较简单,可以优先一试):
选择“扩展->QT VS Tools->Options”,对话框中左侧选择“Qt->General”,右侧选择“Qt Designer->Run in detached window”选项值设为true 即可解决。

九。如何将别人的代码使用自己的vs2019 打开的问题

清理解决方案
重新生成解决方案
上述我在自己的vs2019 上看不到,原因未知
相关文章:
FFmpeg 4.3 音视频-多路H265监控录放C++开发三 :安装QT5.14.2, 并将QT集成 到 VS2019中。
一,安装QT, 重点:在安装QT的时候要安装msvc201x版本的组件, 二 , 安装 qt-vs-tools Index of /development_releases/vsaddin/2.8.1 三,需要安装过 windows10 SDK,一般我们在安装vs2019的时候就…...
Linux 累加计算递归算法汇编实现
1...n可以使用公式计算,同时也是递归实现的很好例子,其c实现代码为 int f(int i) {i && (if(i-1));return i; } 其终止条件为0,此时i && (if(i-1))表达式不成立,不计算if(i-1)直接返回0&…...
明日周刊-第23期
十月已过半,气温也转凉了,大家注意保温哦。冬吃萝卜,夏吃姜,在快要到来的冬季大家可以选择多吃点萝卜。 配图是本周末去商场抓娃娃的时候拍的照片,现在抓娃娃单次普遍都控制在1块钱以下了,还记得多年前的抓…...
kubernets(二)
集群操作 查看集群信息 kubectl get查看各组件信息 格式:kubectl get 资源类型 【资源名】 【选项】 events #查看集群中的所有日志信息 -o wide # 显示资源详细信息,包括节点、地址... -o yaml/json #将当前资源对象输出至 yaml/json 格式文…...
《YOLO 标注工具全览》
《YOLO 标注工具全览》 一、YOLO 标注工具的重要性二、常见的 YOLO 标注工具介绍(一)LabelImg(二)Yolo_Label(三)在线标注工具 Make Sense(四)Ybat - YOLO BBox Annotation Tool&…...
财富思维学习
四大象限: 人类财富创造史经历的五个阶段: 1、黄色(土地)财务阶段:拥有土地和劳动力是财富的要求 2、蓝色(海)财富阶段:谁拥有贸易的通道谁就拥有财富(如港口ÿ…...
python爬虫加解密分析及实现
第一种: 1、找到加密的接口地址,通过加密的接口地址全局搜索 2、通过打断点的方式,操作页面,跑到断点处时,即可找到加密串,如图二; 3、找到用的是哪种加密方式,如: cr…...
用Java做智能客服,基于私有知识库
构建Java智能客服系统的整体思路 使用Java构建智能客服系统的整体思路是: 首先将客服QA文档以Word形式导入到系统中,通过向量化处理存入知识库。 当用户提出问题时,系统会根据问题内容从知识库中检索相关的上下文信息,并结合大…...
软考(网工)——网络安全
文章目录 🕐网络安全基础1️⃣网络安全威胁类型2️⃣网络攻击类型 🕑现代加密技术1️⃣私钥密码/对称密码体制2️⃣对称加密算法总结3️⃣公钥密码/非对称密码4️⃣混合密码5️⃣国产加密算法 - SM 系列6️⃣认证7️⃣基于公钥的认证 🕒Hash …...
如何给手机换ip地址
在当今数字化时代,IP地址作为设备在网络中的唯一标识,扮演着举足轻重的角色。然而,有时出于隐私保护、网络访问需求或其他特定原因,我们可能需要更改手机的IP地址。本文将详细介绍几种实用的方法,帮助您轻松实现手机IP…...
kafkamanager安装
一.下载kafkamanager2.0 https://download.csdn.net/download/cyw8998/89892482 二.修改配置文件 解压缩 unzip kafka-manager-2.0.0.0.zip vim application.conf /opt/module/kafka-manager-2.0.0.0/conf/application.conf 添加以下内容:(连接zooke…...
笔记本电脑U口保护分享
在前司时候,经常遇到各种硬件类的问题,但是之前没时间分享,现在来给大家分享一下,常见的问题及如何保护。 1.接口接触不良。这个一般发生于使用时间长了,可以用细砂纸,轻轻摩擦后再进行尝试。 2.接口失灵…...
OpenCV高级图形用户界面(20)更改窗口的标题函数setWindowTitle()的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在OpenCV中,cv::setWindowTitle函数用于更改窗口的标题。这使得您可以在程序运行时动态地更改窗口的标题文本。 函数原型 void cv::…...
结构体指针的初始化以及结构体变量作为函数实参传递时易混淆的知识点
结构体指针初始化以及结构体变量作为函数实参传递时易混淆的知识点 首先要明确,结构体类型是用户自己定义的一种数据类型,其本质上与int, char等标准数据类型是一致的 **1.**因此,在进行结构体指针的初始化时,应该这样写&#x…...
Github 2024-10-20 php开源项目日报Top10
根据Github Trendings的统计,今日(2024-10-20统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量PHP项目10Blade项目1Laravel:表达力和优雅的 Web 应用程序框架 创建周期:4631 天开发语言:PHP, BladeStar数量:75969 个Fork数量:24281 次…...
C++ 算法学习——1.3 双向深度优先搜索
双向深度优先搜索(Bidirectional Depth-First Search)是一种图搜索算法,旨在通过从起始节点和目标节点同时开始,沿着深度优先搜索的路径向前探索,以减少搜索空间并提高搜索效率。 1. 基本原理 双向深度优先搜索同时从…...
Artistic Oil Paint 艺术油画着色器插件
只需轻轻一点,即可将您的视频游戏转化为艺术品!(也许更多…)。 ✓ 整个商店中最可配置的选项。 ✓ 六种先进算法。 ✓ 细节增强算法。 ✓ 完整的源代码(脚本和着色器)。 ✓ 包含在“艺术包”中。 …...
记一次left join联表查询的索引失效场景
结论:关联表的列的字符集不一致导致的 场景:user_t(用户表)、org_t(机构表),user_t的org_id和org_t的id是一对一关系 1.explain发现org_t表未走索引,但是org_t的id字段默认存在主键…...
从零到一:前端开发者学习 Cocos Creator 的全攻略
大家好,我是小蜗牛。 作为一名前端开发者,掌握 Cocos Creator 是一个非常有趣且充满潜力的技能。Cocos Creator 是一款免费开源的游戏开发引擎,它的工作流和前端开发非常相似,因此前端开发者可以较快上手,并通过开发小…...
JavaWeb 19 AJAX
目录 一、什么是AJAX 同步交互和异步交互 同步交互 异步交互 Ajax工作原理 Ajax实现方式 原生JavaScript方式进行ajax(了解): "我就是希望你好,就像很多人希望我好一样,特别简单,特别真挚。也不为了什么,就是希望…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
