- 博客(115)
- 资源 (6)
- 收藏
- 关注
原创 【Qt】使用QMediaPlayer播放视频
window平台可以安装K-Lite,linux平台一般各发行版都会默认安装GSteam。播放RTSP视频时,可以使用VLC播放器搭建一个视频推流服务器,用于拉流的客户端的调试。3、如果没有添加Qt环境变量,请把关联的Qt5MultimediaWidgets.dll和Qt5Multimedia.dll放到进程路径下否则也会报ServiceMissingError错误。2、需要安装解码器,否则报 ServiceMissingError 无法找到服务的错误。1、需要在.pro工程文件中引用对应模块。
2024-10-28 11:39:23
1461
原创 【MakeFile】add_dependencies与target_link_libraries
target_link_libraries使第二个目标成为第一个目标的链接依赖项-它们将由生成的buildsystem链接-并使其成为如果依赖的目标需要重建,则第一个目标也将在需要时重建。当使用PRIVATE或PUBLIC可见性时,它表示并指示第二个目标的接口中的内容将对第一个目标可用。当使用INTERFACE或PUBLIC visibility时,它表示并指示第二个目标的接口中的内容将可用于表达对第一个目标的链接依赖关系(“传递”链接依赖关系)的目标。这是一种构建顺序控制机制。
2024-07-10 10:31:04
405
1
原创 windbg截取dump说明
7. 截取到崩溃信息后会弹出下图,在红框区域中输入命令“.dump –ma D:\mydump.dmp”7. 保存成功后,会显示如下图所示红框内的成功提示信息,然后将对应路径下的文件打包发给开发即可。5. 在cmd中输入下图中命令,其中路径指的是windbg的安装路径。后面的路径+*.dmp是会把dump文件保存到输入的路径下。1.双击exe程序,打开如下界面,点击Next。6. 注册成功后,会弹出下图中带有成功的提示。2. 选择“I agree”,点击Next。4. 安装完成后提示下图。
2023-11-23 10:40:55
182
原创 win10中使用VS2017\VS2019编译MQTT(包含32位、64位;Debug版本\Release版本)(附示例demo)
1、详细介绍使用vs2017和vs2019编译最新版本MQTT步骤及注意事项2、编译过程中工具的使用及注意事项(Cmake、OPenSSL)3、举例如何使用编译后的MQTT库
2022-07-29 17:46:03
2897
1
原创 番茄助手设置注释
1、注释文件头//========================================================================/// <summary>/// /// </summary>/// <file>/// 文件名: $FILE_BASE$.$FILE_EXT$/// 作 者: yuan.wang/// </file>/// <versions>/// <v
2022-03-03 16:34:34
3137
原创 C++ 一文弄懂字符串
一、几种编码格式比较 编码类型 英文 汉字 说明 ASCII码 1个Byte字节(不区分大小写) 无中文 ASCII码只适用于美帝,要是用在美帝之外的国家,就不能满足需求了 ANSI码 1个Byte字节 2个Byte字节 前127个与ASCII码相同,之后的...
2022-02-08 15:09:25
3093
原创 make makefile cmake qmake都是什么,有什么区别?
图片来源:https://www.zhihu.com/question/27455963
2021-09-03 09:32:16
128
原创 LibEvent-Demo
// libevent-test.cpp : 定义控制台应用程序的入口点。////#include "stdafx.h"#pragma comment(lib,"ws2_32.lib")#pragma comment(lib,"wsock32.lib")#pragma comment(lib,"libevent.lib")#pragma comment(lib,"libevent_core.lib")#pragma comment(lib,"libevent_extras.lib").
2021-06-22 16:21:39
318
转载 vs使用(引用)第三方库的四种方法
转载博客地址:https://blog.youkuaiyun.com/sszgg2006/article/details/25220575
2021-04-21 16:03:15
2145
原创 windows C++ 网络编程
参考文章:1、https://blog.youkuaiyun.com/yao_hou/article/details/91400832?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161363604516780269893839%252522%25252C%252522scm%252522%25253A%25252220140713.130102334....
2021-02-18 16:20:59
255
原创 windows下通过VScode远程调试linux程序
一、windows下配置环境说明:win7(x64)、ubuntu15.5.0、vscode1.52.1步骤说明:1、二、Linux下配置
2021-01-25 17:33:56
431
原创 Linux中安装VSCode(共享文件夹方式)
前言:Linux中安装VSCode简单的方式是使用Ubuntu应用商店,直接下载安装。但有时候半天也加载不出来(可能是资源链接的是外服务器的原因),因此,可以通过windows中先下载适用Ubuntu linux系统的VSCode 版本,Window与Linux通过共享文件夹的方式,把window中下载的VSCode安装到Linux中。环境:1、VWware 152、Ubuntu20.43、VSCodecode_1.52.1-1608136922_amd64.deb第一步:V..
2021-01-20 09:50:43
585
原创 数据库相关基础知识
参考文章:1、https://blog.youkuaiyun.com/ithomer/article/details/6624684
2021-01-04 15:44:41
75
转载 windows下内存泄露定位及分析方法
一、理解内存泄漏及内存泄漏常见情况程序中通常包含着静态内存和栈内存。静态内存用来保存局部static对象、类static数据成员以及定义在任何函数之外的变量(全局变量)。栈内存用来保存定义在函数内的非static对象。分配在静态或栈内存中的对象由编译器自动创建和销毁。对于栈对象,仅在定义的程序块运行时才存在,程序退出,栈对象也随即销毁;static对象和全局对象则是在程序结束时销毁。除了静态内存和栈内存,程序还拥有一块内存池,这部分也就是称为堆。在使用堆空间是就需要使用动态内存分配。内...
2020-11-13 09:54:39
3649
2
原创 开源日志系统
1、spdlog参考博客:https://blog.youkuaiyun.com/qq_38415161/article/details/1001992492、log4cplus参考博客:https://blog.youkuaiyun.com/u014695839/article/details/84937769库github地址:https://sourceforge.net/projects/log4cplus/3、zlog参考博客:https://blog.youkuaiyun.com/fangye945a/
2020-10-09 15:59:00
1003
原创 C++ 执行批处理(.bat)
void CKDBTagTreeView::ExecuteBatchCommand(int type){ WCHAR szAppPath[1024] = { 0 } ; if( GetModuleFileNameW(NULL,szAppPath,1023 ) == 0 ) return; // 提取目录和文件名 WCHAR wszFileName[MAX_PATH] = { 0 }; LPWSTR pwszPos = wcsrchr( szAppPath, L'\\' ); if.
2020-09-23 14:56:58
1521
原创 C++输出log日志到指定路径下且达到一定大小新建文件
HANDLE g_TraceFileHandle = INVALID_HANDLE_VALUE;//必须为成员变量或者为全局变量std::wstring g_TraceFilePath; //输出路径,必须为成员变量或者为全局变量void CChannel::XDBDebugOnly(const wchar_t* pwszFormat,...){ //XDBAutoSpinLock AutoLock(_xdbTraceLock);//锁 if( g_TraceFileHan.
2020-08-13 13:32:48
1324
原创 输出日志到文件中
通过打印信息来调试代码的方式常用的有两种:1、通过在Mess中信息窗来显示所需要输出的信息2、通过将所要输出的信息输出的文件中来查看所需要的信息1、通过Mess显示信息此种方式也有两种:第一种:比较简单【以显示耗时为例】CTime ctimestart = ::GetCurrentTime();//add by yuan.wang20171107/****要测试的耗时代码*******/CTime ctimeend = ::GetCurrentTime();CTimeSp.
2020-05-27 14:06:37
279
原创 vs2008 生成文件(lib、pdb、map、dll、Build)路径配置
开发工程相对较大一些的项目时,需要创建解决方案。编译后生成的lib、pdb等在默认路径下,如果模块较多时,查找起来比较麻烦。因此,可以通过配置vs工具指定生成文件的路径。这样看起来计较简洁,易于查找。路径配置:1、dll或者exe路径配置2、Build编译文件3、pdb、map4、lib最终生成文件后文件路径如下图所示:...
2020-05-11 11:36:01
1110
原创 1.8 事件处理器和消息传递接口
#include <windows.h>LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);int WINAPI WinMain(HINSTANCE hThis, HINSTANCE hPrev, LPSTR szCmdLine, int iCmdShow){ //告诉编译器不使用某些参数,方便编译器进行一些额外的优化 UNREFERENCED_PARAMETER(hPrev);.
2020-05-09 18:01:46
186
转载 C++中继承与组合的区别
C++程序开发中,设计孤立的类比较容易,设计相互关联的类却比较难,这其中会涉及到两个概念,一个是继承(Inheritance),一个是组合(Composition)。因为二者有一定的相似性,往往令程序员混淆不清。类的组合和继承一样,是软件重用的重要方式。组合和继承都是有效地利用已有类的资源。但二者的概念和用法不同。如果类B 有必要使用A 的功能,则要分两种情况考虑:1.继承若在逻辑上B 是一种A (is a kind of),则允许B 继承A 的功能,它们之间就是Is-A 关系。如男人(Man)
2020-05-09 17:39:48
921
转载 白盒复用vs黑盒复用&&白盒框架vs黑盒框架
白盒复用:源代码可见,可修改和扩展– 复制已有代码当正在开发的系统,进行修改– 可定制化程度高– 对其修改增加了软件的复杂度,且需要对其内部充分的了解黑盒复用:源代码不可见,不能修改– 只能通过API接口来使用,无法修改代码– 简单,清晰– 适应性差些白盒框架白盒框架是基于面向对象的继承机制。之所以说是白盒框架,是因为在这种框架中,父类的方法对子类而言是可见的。子类可以通过继承或重写父类的方法来实现更具体的方法。虽然层次结构比较清晰,但是这种方式也有其局限性,父类中的方法
2020-05-09 17:18:27
1510
原创 1.7 多态的理解
多态:通过基类的指针或引用访问派生类的对象,执行派生类中实现的操作举例:#include "stdafx.h"#include <iostream>#define M_PI 3.14159265358979323846using namespace std;//抽象类/*抽象类不能有对象,但可以有继承类*/class CFigure{public: virtual char* FigureType() = 0;//纯虚函数 virtual double Cir
2020-05-09 13:57:12
205
原创 MFC与win32的区别联系
基础概念:Win32:包含好多基本的API;MFC:里面包含好多类库,通过类库间接使用API;经验之======================================================================谈Win32:①有时候mfc是封装的类不能满足我们的要求,这时就需要我们自己用api来开发了。②win32是windows下的最基本的编程方式,使用它...
2020-05-08 17:41:13
388
原创 windows编程-——窗口与消息
/*------------------------------------------------------------ HELLOWIN.C -- Displays "Hello, Windows 98!" in client area (c) Charles Petzold, 1998 ------------------------------...
2020-05-08 17:40:59
116
原创 windows编程——窗口与消息
/*------------------------------------------------------------ HELLOWIN.C -- Displays "Hello, Windows 98!" in client area (c) Charles Petzold, 1998 ------------------------------...
2020-05-08 17:40:44
84
原创 消息
DECLARE_MESSAGE_MAP( )说明:你的程序中的每一个CCmdTarget的派生类都可以提供一个消息映射以处理消息。在你的类声明的末尾使用DECLARE_MESSAGE_MAP宏。然后,在实现了类成员函数的.CPP文件中加入BEGIN_MESSAGE_MAP宏,再加入每个消息处理函数的宏入口,最后使用END_MESSAGE_MAP宏。注意:如果你在DECLARE_MESSAG...
2020-05-08 17:40:24
129
原创 C++接口与虚函数&纯虚函数
C++接口的定义与实现的详细过程1.接口的定义与实现所谓的接口,即将内部实现细节封装起来,外部用户用过预留的接口可以使用接口的功能而不需要知晓内部具体细节。C++中,通过类实现面向对象的编程,而在基类中只给出纯虚函数的声明,然后在派生类中实现纯虚函数的具体定义的方式实现接口,不同派生类实现接口的方式也不尽相同,从而实现多态。现通过一个简单的实例讲解具体实现步骤(⊙o⊙)。1.1类接口的定义 ...
2020-05-08 17:38:42
271
原创 windows编程——窗口
GetActiveWindow: 取当前活动窗口句柄GetSafeHwnd:函数取得程序所在窗口类的句柄GetParent():该函数获得一个指定子窗口的父窗口句柄。
2020-05-08 17:36:42
124
MQTT编译工具+vs2017&&vs2019编译后的32位&&64位库+Cmake生成的VS17和19工程+MQTT源码
2022-07-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人