自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xiapang009的专栏

科技改变命运,技术改善生活

  • 博客(101)
  • 资源 (61)
  • 收藏
  • 关注

转载 GStreamer基础教程11 - 与QT集成

GStreamer基础教程11 - 与QT集成

2023-12-18 10:05:38 792

原创 qt movetoThread 函数使用

/! put the following code in constructorQThread *thread = new QThread;//! type of m_weakThread is QWeakPointer<QThread>m_weakThread = thread;Worker *worker = new Worker;//! type of m_weakWorker is QWeakPointer<Worker>m_weakWorker =

2021-06-03 10:36:00 314

转载 RTMP协议分析 一、RTMP包头

RTMP协议 封包 参考Red5RTMP协议封包 由一个包头和一个包体组成,包头可以是4种长度的任意一种:12, 8, 4, 1 byte(s).完整的RTMP包头应该是12bytes,包含了时间戳,Head_Type,AMFSize,AMFType,StreamID信息,8字节的包头只纪录了时间戳,Head_Type,AMFSize,AMFType, 4个字节的包头记录了时间戳,Head_Type。1个字节的包头只记录了Head_Type。包体最大长度默认为128字节,通过chunkSize可改变包...

2021-04-25 10:56:49 504

原创 linux 下编译crtmpserver出现编译错误更改方法

cmake -DOPENSSL_INCLUDE_DIR=/usr/include/ssl -DOPENSSL_SSL_LIBRARY=/usr/lib/x86_64-linux-gnu/libssl.so -DOPENSSL_CRYPTO_LIBRARY=/usr/lib/x86_64-linux-gnu/libcrypto.so -B./build -H. -DCMAKE_BUILD_TYPE=Release

2021-04-19 16:12:52 224

转载 win7下使用共享内存方式CreateFileMapping失败错误码5的解决方法

在普通应用程序中使用共享内存方式创建内存共享对象时,CreateFileMapping函数总是返回句柄为NULL,通过GetLastError得到返回错误码 0x5, 问题解决:使用Local 代替Global, 问题解决,下面是使用实例: TCHAR szName[] = TEXT("Local\\MyFileMappingObject"); TCHAR szName[] = TEXT("Global\\MyFileMappingObject"); 原来Glo...

2021-04-13 15:04:19 2251

转载 C++模板类/函数,将头文件与源文件分离

将包含模板的源文件与头文件分开关键在于模板显式实例化。解决方案模板函数分离源文件按一般方式编写.h和.cpp文件,但注意添加template <typename T>的声明; 在.cpp文件末尾,添加模板显式实例化代码,如:// 显式实例化,注意,`template`之后没有`<>`,若添加则会报错!// 每种将被使用的类型,均需要进行显式实例化template void A::show(int &&);template void A:

2020-12-04 19:47:46 4869

转载 c++自定义结构体通过模板实现

#include <iostream> #include <typeinfo> #include <string> using namespace std; template < typename T > class bst { struct Node{ T data; //int password; //int name; Node* L; ..

2020-12-04 19:40:51 744

转载 linux进程间通信--消息队列相关函数(ftok)详解

ftok消息队列、信号灯、共享内存常用在Linux服务端编程的进程间通信环境中。而此三类编程函数在实际项目中都是用System V IPC函数实现的。System V IPC函数名称和说明如下表15-1所示。表15-1 System V IPC函数 消息队列 信号灯 共享内存区 头文件 <sys/msg.h> <sys/sem.h&gt...

2020-11-26 14:54:48 322

转载 window环境下thrift Compiler 编译步骤

在windows环境下,编译官方提供的thrift compiler源文件,出现一些错误,通过查找资料,解决了相关问题,在此记录下:·1、下载Bison for Windows 网址:http://gnuwin32.sourceforge.net/packages/bison.htm选择安装包:安装该程序,注意所选路径中一定不能包含空格和汉字,否则编译失败。2、下载Flex for Windows 网址: http://gnuwin32.sourceforge.net/packages/

2020-11-19 13:43:44 224

原创 thrift在windows的编译/安装--c++版

2. boost安装/编译/链接  具体步骤如下:  *) 下载boost    1. 下载 boost_1_55_0.zip  *) 编译boost    1. 执行 bootstrap.bat    2. 执行 b2.exe (编译的时间较长, 请耐心等待)  *) 验证boost    在virtual studio的window console工程属性中添加如下:    1. 附加包含目录: $BOOST_HOME    2. 附加库目录: $BOOST_HOME\stage\l

2020-11-19 13:41:32 567

转载 检测MSWORD.OLB是否注册及注册的代码

此文章为MSWORD.OLB未正确注册导致问题现象及解决方法的代码解决:代码逻辑:1、先检测是否注册了wordolb。 检测方法:看能否得到word 文档对象的接口。如果得不到且错误返回码为TYPE_E_CANTLOADLIBRARY,则定义为olb未注册成功。2、发现未注册,使用regtlibv12.exe注册wordolb。以下是关键代码:(1)检测wordolb是否注册 /* * check if word ole i...

2020-11-05 14:45:11 553

转载 shell脚本--sed的用法

写的比较好的sed用法,记录下以后查阅留着用!sed在处理文本时是逐行读取文件内容,读到匹配的行就根据指令做操作,不匹配就跳过。sed是Linux下一款功能强大的非交互流式文本编辑器,可以对文本文件进行增、删、改、查等操作,支持按行、按字段、按正则匹配文本内容,灵活方便,特别适合于大文件的编辑。本文主要介绍sed的一些基本用法,并通过shell脚本演示sed的使用实例。1.sed的使用方法,调用sed 命令的语法有两种:一.在命令行指定sed指令对文本进行处理:sed +选项 ‘指令’ 文.

2020-10-21 09:46:25 10591 2

转载 OLE(COM组件)方式写excel

EXCAL操作(一)打开写入参考例子:https://blog.csdn.net/ywx123_/article/details/77074038这是另一个CSDN博主写的,我也是参考他的例子去做的,再此感谢这位博主。新建一个MFC项目点击下一步选择基于对话框直接点完成,进来后如下图先点项目,右键属性,更改为多字节。先什么都不动,编译一下代码。默认看能不能通过。然后点项目,右键类向导。弹出窗口如下点击添加类-类型库中的MFC类弹出

2020-10-15 15:56:15 766

转载 在VS2010中利用MFC读取word、ppt、excel格式文件

本文源码的应用环境说明:Windows 7,Microsoft Visual Studio 2010,Microsoft Office Excel 2013最近自己在做一个利用OLE/COM的实现MFC读取word、excel和ppt格式里面的内容,虽然有关这方面的介绍很多,但是感觉比较杂,比较乱,因此将自己整理加修改的结果写出来,希望能够对以后做这方面格式读取的有帮助。1、安装office软件。由于利用的是Office的OLE/COM控件来读取,所以Office是要预先装好2.导入并封装W

2020-10-15 15:53:41 1203

转载 vc屏幕截图实现

1.获取保存截图文件的路径,暂时选定为桌面 //把截图的文件保存到桌面 BOOL CaptureLolToDesktop(HWND hWnd) { LPRECT lprc = new RECT; GetWindowRect(hWnd,lprc); DWORD llocaltime = GetTickCount(); char chDesktopPath[MAX_PATH] = {0}; SHGetSpecialFolderPat

2020-09-25 14:04:06 1172

原创 windows进程间通信-管道

来自msdn的例子:服务端:#include <windows.h> #include <stdio.h> #include <tchar.h>#include <strsafe.h>#define BUFSIZE 4096 DWORD WINAPI InstanceThread(LPVOID); VOID GetAnswerToRequest(LPTSTR, LPTSTR, LPDWORD); int _tmain(VOID)

2020-09-25 09:53:37 137

转载 VC获得程序自身的版本号

char* GetLocalPogramVersion() { TCHAR pFilePath[MAX_PATH] = {0}; DWORD dwRet = GetModuleFileName(NULL, pFilePath, MAX_PATH); if(dwRet == 0) { TRACE("h获取程序的文件路径失败,错误码:%s\n",GetLastError()); return ""; } TRACE("..

2020-09-25 09:46:33 284

原创 windows下读取磁盘扇区数据

在Windows下,磁盘可以看做是一个文件,其文件名为\\\\.\\PhysicalDriveX,其中X表示磁盘的编号,例如\\\\.\\PhysicalDrive0表示的是第0号磁盘,如果需要读取一个磁盘只需要通过对应的文件名称获取到磁盘的句柄,然后通过函数ReadFile读取即可,下面是相关的代码。//通过给定磁盘的编号,获取到磁盘的句柄HANDLEGetDiskHandle(intiDiskNo){charszDriverBuffer[128];memset(...

2020-09-22 09:34:59 1895 1

原创 vc进程间互斥Mutex

参考MSDN例子First Process#include <windows.h>#include <stdio.h>#include <conio.h>// This process creates the mutex object.int main(void){ HANDLE hMutex; hMutex = CreateMutex( NULL, // defau...

2020-09-11 17:21:50 436

转载 vs2010 下CHtmlView 页面会闪烁

web browser控件在对话框程序中不会闪烁, 而在CWnd中, 当窗口缩放的时候就会闪.一个web browser控件由3层窗口组成:Shell EmbeddingShell DocObject ViewInternet Explorer_Server而Internet Explorer_Server这层窗口可能只有在显示网页后才出现. 刚创建的时候并没有这层窗口. 闪烁的原因就是Internet Explorer_Server在显示的时候总是先画背景在画前景, 交替刷新导致的.所...

2020-09-09 13:54:45 163

转载 libcurl 接受完整数据

首先了解一下基本的函数作用1. 调用curl_global_init()初始化libcurl2. 调用curl_easy_init()函数得到 easy interface型指针3. 调用curl_easy_setopt()设置传输选项4. 根据curl_easy_setopt()设置的传输选项,实现回调函数以完成用户特定任务5. 调用curl_easy_perform()函数完成传输任务6. 调用curl_easy_cl...

2020-09-03 16:40:54 752

转载 win7 vs2015 下编译 tesseract 4.1.1

此文章为 汉学@博客园 原创作品,转载请保留版权信息原文链接:https://www.cnblogs.com/c2soft/articles/13194981.html一、总体思路各库之间的依赖关系及使用的工具如下:之前在 win7 64位 + VS2017 + VCPKG 的环境下很顺利地编译了 tesseract 4.1.1,可是当我想对 tesseract 的源码做下改动时,发现编译过程完全被 VCPKG 所接管,没法重新编译 tesseract 库(C语言门外汉,惭愧),于.

2020-08-29 15:21:57 1002

转载 C++对EML文件的读取,各种邮件客户端的邮件读取

采用微软官方的动态链接库解决这个问题。就显得很方便了。首先我们建立一个MFC Dll 项目。。然后在头文件中加入:#import <cdosys.dll> no_namespace raw_interfaces_only#import “C:\Program Files\Common Files\System\ado\msado15.dll” no_namespace raw_interfaces_only这是我电脑中的DLl路径。各个版本的操作系统dll的路径可能不一样。

2020-08-29 10:11:29 1073

转载 C++11并发编程-条件变量(condition_variable)详解

总结的很详细,打算记录下来。原文地址:https://www.2cto.com/kf/201506/411327.html头文件主要包含了与条件变量相关的类和函数。相关的类包括std::condition_variable和std::condition_variable_any,还有枚举类型std::cv_status。另外还包括函数std::notify_all_at_thread_exit(),下面分别介绍一下以上几种类型。std::condition_variable 类介绍st...

2020-08-26 16:17:10 1220

转载 使用CreateProcess运行程序 + 使用命令行对html文件进行打印

由于我们程序中通常只是将外部程序或者一个命令行运行起来,并不需要进行后续的控制,于是我将这个操作封装成了一个方便快速操作的函数CreateProcessQuick,一般情况下,应用程序名称不需要指定,我们只需指定后面的命令行参数。如果是运行notepad程序,则只需要指定lpCommandLine为"notepad"。近期所做的一个功能是在程序中指定打印一个html文件,路径已知。使用processexplorer查看打印文件对话框的命令行为"rundll32.exe" C:\Windows\sys

2020-08-24 14:23:22 297 1

转载 VC++文件路径和文件名处理函数

路径截断与合并函数 GetModuleFileName 得到模块路径名 PathRemoveArgs 去除路径的参数 PathRemoveBackslash 去除路径最后的反斜杠“\” PathAddBackslash 在路径最后加上反斜杠“\” PathRemoveBlanks ...

2020-08-17 16:46:17 745

原创 sqlite3的特殊字符转义及通配符

sqlite3数据库在搜索的时候,一些特殊的字符需要进行转义,具体的转义如下:/->//'->''[->/[]->/]%->/%&->/&_->/_(->/()->/)c/c++ 转换函数voi...

2020-08-13 09:50:54 1668

原创 C++实现utf8和gbk编码字符串互相转换

不同系统或者服务器之间消息传递经常遇到编码转换问题,这里用C++实现了一个轻量的gbk和utf8互相转换,可跨平台使用。(重量级的可以用libiconv库)在windows下用<windows.h>头文件里的函数进行多字节和宽字符转换,linux下采用<iconv.h>头文件里的函数进行编码互相解析#include <iostream> #include <string> #include <string.h> #include <s

2020-08-08 13:34:24 460

转载 zlib在windows上的编译

首先从http://www.zlib.net/下载了最新的源代码,版本是1.2.7解压后,实际已经提供了在VC下编译的工程,目录为:zlib-1.2.7\contrib\vstudio其中只有vc9和vc10因为我用的是vs2008,因此用vc9,打开项目后,其中的zlibstat是编译为静态库zlibvc是编译为动态库,还有其它一些工程暂时未研究编译动态库时碰到的第一个问题就是需要link两个文件,..\..\masmx86\match686.obj..\..\masmx86\inffas

2020-08-08 10:53:17 536

原创 c++中如何动态的初始化一个二维数组

#include<iostream> #include<stdlib.h> using namespace std; int main() { int M, N; int **array; cout << "请输入M,N的值:" << endl; cin >> M >> N; if (M <= 0 || N &lt...

2020-08-04 09:30:46 1357

原创 ubuntu 下libvhdi挂载 vhd的脚本

#! /bin/sh# 通过 vhdimount 实现 vhd 的挂载 ,挂载 vhd 中的第一个分区# 需要安装的软件包 sudo apt-get install libvhdi-utils sleuthkit# 需要 awk 计算 要装载分区的首位置 offset = start_byte =Units * Startecho $1echo mkdir......VhdPath=`dirname /v_disk.`basename $1``sudo mkdir $VhdPath/`bas

2020-07-14 08:55:17 861

转载 libvmdk源码编译方法

内容:介绍libvmdk库的安装。libvmdk 是用于访问 VMware Virtual Disk (VMDK) 格式文件的库。Homepage: https://github.com/libyal/libvmdkDocs: https://github.com/libyal/libvmdk/wiki安装git clone https://github.com/libyal/libvmdkcd libvmdk./synclibs.sh./autogen.sh./config

2020-07-10 18:03:49 647

原创 Ubuntu检查apt-get软件列表

1.搜索所有列表sudo apt-cache search all2.搜索所有软件并去掉重复sudo apt-cache search all | wc3.检索指定软件sudo apt-cache search all | grep gcc

2020-07-09 11:35:06 902

转载 编译CEF3 发生 c101008d: Failed to write the updated manifest to the resource of file

用VS 2017 15.9.24 在编译 CEF3源代码时候,发现在ceftests 会出现Errorc101008dFailed to write the updated manifest to the resource of file "D:/CEF/cef_binary_83.3.12_windows32/build/tests/ceftests/Debug/ceftests.exe". ?????????????百度,bing等,都是说1、关掉杀软或2、在属性设置中 Li...

2020-07-09 09:12:33 964

转载 fork与vfork的区别

fork()与vfock()都是创建一个进程,那他们有什么区别呢?总结有以下三点区别:1.fork():子进程拷贝父进程的数据段,代码段vfork( ):子进程与父进程共享数据段2.fork ()父子进程的执行次序不确定vfork 保证子进程先运行,在调用exec 或exit 之前与父进程数据是共享的,在它调用exec或exit 之后父进程才可能被调度运行。3.vfork ()保证子进程先运行,在她调用exec 或exit 之后父进程才可能被...

2020-06-30 17:27:06 179

原创 【IPC通信】基于管道的popen和pclose函数

标准I/O函数库提供了popen函数,它启动另外一个进程去执行一个shell命令行。这里我们称调用popen的进程为父进程,由popen启动的进程称为子进程。popen函数还创建一个管道用于父子进程间通信。父进程要么从管道读信息,要么向管道写信息,至于是读还是写取决于父进程调用popen时传递的参数。下在给出popen、pclose的定义:#include <stdio.h>/*函数功能:popen()会调用fork()产生子进程,然后从子进程中调用/bin/sh -c来.

2020-06-30 14:48:27 115

转载 简单的linux service(linux服务)编写,运行示例

1.写一个简单小程序 1 2 3 4 5 6 7 8 9 10 11 #include<stdio.h> #include<stdlib.h> int main(int argc,char **argv) {   while(1)   {     printf("hello world\n");     s.

2020-06-30 10:13:14 1055

转载 在CentOS 7中使用VS Code编译调试C++项目

1. 安装VSCODE见VSCode官方链接https://code.visualstudio.com/docs/setup/linux#_rhel-fedora-and-centos-based-distributions先下载yum源:sudo rpm --import https://packages.microsoft.com/keys/microsoft.ascsudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseu..

2020-06-29 14:46:51 897

转载 C++实现utf8和gbk编码字符串互相转换

不同系统或者服务器之间消息传递经常遇到编码转换问题,这里用C++实现了一个轻量的gbk和utf8互相转换,可跨平台使用。(重量级的可以用libiconv库)在windows下用<windows.h>头文件里的函数进行多字节和宽字符转换,linux下采用<iconv.h>头文件里的函数进行编码互相解析。代码#include <iostream>#include <string>#include <string.h>#include

2020-06-28 13:10:03 1500

转载 Linux中复制C/C++程序的所有依赖库的脚本

脚本如下,保存为copy.sh,放到C/C++程序所在的文件夹(以C/C++程序名为App为例)deplist=$( ldd $1 | awk '{if (match($3,"/")){ print $3}}' ) cp -L -n $deplist $2然后运行./copy.sh App ./脚本运行结束后可以看到,App所依赖的所有库都被复制到了App所在文件夹下————————————————版权声明:本文为CSDN博主「Keycer」的原创文章,遵循CC 4.0 BY-SA版权协.

2020-06-18 11:19:50 525

vc cstatic 扩展类

cstatic 扩展类

2017-06-06

win64调用win32程序atl实现

win64调用win32程序ATL

2017-05-25

live555+ffmpeg解码h264

网上大神写的 live555+ffmpeg解码h264程序,开发环境vs2010

2017-04-14

rtsp服务端及客户端

网上找的rtsp服务端和客户端代码vc写的试了vs2008编译通过

2016-01-18

《Qt及Qt+Quick开发实战精解》代码

《Qt及Qt+Quick开发实战精解》代码

2015-11-10

屏幕等待显示图片

加载数据友好界面demo vc开发 给用户很好的体验,codeproject上找的,希望对大家有用

2015-10-22

登陆对画框

VC写的登陆对话框实现用户名和密码的验证,视图文档类工程,希望对大家有用

2015-10-20

登陆对话框

vc6.0写的登陆对话框,网上找到的,希望对大家有用,向原作责致敬!

2015-10-20

介绍ACE开发的少数几本书

介绍ACE开发的少数几本书,希望对大家有用,用好压软件可以解压

2015-04-10

win32调用x64 exe

win32调用x64 exe 希望对大家有用

2014-12-16

Installshield

Installshield环境变量的追加与删除 配置

2014-12-04

installshield教程

收集的几个Installshield各种版本的教程。里面有Install11.5创建sql.pdf,Installshield12应用教程.doc,Installshield2008英文教程.pdf,installshield教程.chm,Installshield入门指南.doc Installshield应用教程.doc

2014-11-21

GDataXMLNode创建和解析XML

GDataXMLNode创建和解析XML类,google的第三方类

2014-10-30

com+编程指南源码

com+编程指南源码,以供学习使用,本书详解的比较详细,适合初学者

2014-09-25

摄像头控件

ocx控件在web网页中调用的例子,来自网络和大家分享

2014-09-24

清除上网记录

vc删除上网记录 vc6.0网上找的,向原作者致敬!!!

2014-08-07

c\c++base64

base64编码和解码,c\c++类 编译环境vs2008 希望对大家有用!!

2014-08-06

IOCP完成端口

国外网站上找的完成端口 iocp解决了编程中遇到的问题,发到网上希望对大家有用,使用时候改一下端口最好,默认是999可能本机会占用。

2014-05-30

CListCtrl添加Button

CListCtrl添加Button 开发环境vc6.0,使用的例子程序,希望对大家有用

2014-04-18

CTreeCtrl添加button

CTreeCtrl自绘添加button显示

2014-03-31

testLibRtmp-master.zip

使用librtmp推流/拉流

2021-03-11

haproxyWindow版本

haproxy for windows 版本 网上大神编译的希望对大家有用

2018-03-30

directshow播放器

directshow 简单播放器 网上大神写的,希望对大家有用

2018-03-28

mfc安全退出线程

mfc安全退出线程mfc安全退出线程mfc安全退出线程mfc安全退出线程mfc安全退出线程

2018-01-25

缩略图滚动预览

MFC缩略图滚动预览_VS2008 网上大神写的,上传给大家用!感谢大神

2017-11-21

Linux+C编程实战源码

Linux+C编程实战源码 Linux+C编程实战源码Linux+C编程实战源码Linux+C编程实战源码Linux+C编程实战源码Linux+C编程实战源码

2017-09-19

P2P网络技术原理与C++开发案例.pdf

P2P网络技术原理与C++开发案例.pdf

2017-08-28

Qt5开发及实例完整版随书源代码

Qt5开发及实例完整版随书源代码

2017-08-24

vc wifi 连接

vc wifi 连接 客户端 开发环境vs2008

2017-06-23

ffmpeg 音频数据采集

ffmpeg 音频数据采集 开发环境vs2010 学习从零开始学习音视频编程技术(十七) 录屏软件开发之音频采集 源码

2017-06-22

ffmpeg sdl录屏

使用dshow抓屏需要安装抓屏软件:screen-capture-recorder 软件地址:http://sourceforge.net/projects/screencapturer/

2017-06-19

ffmpeg sdl2.0 播放usb摄像头

ffmpeg sdl2.0 播放usb摄像头 开发环境vs2010

2017-06-16

Redis_64bit

Redis_64bit 执行程序

2017-06-14

sourceinsight4.0破解

sourceinsight4.0破解

2017-06-14

ffmpeg sdl简单播放器

ffmpeg sdl简单播放器 来自网络

2017-06-13

从零开始学习音视频编程技术(四) FFMPEG的使用 源码

从零开始学习音视频编程技术(四) FFMPEG的使用 源码

2017-06-07

从零开始学习音视频编程技术(五)使用FFMPEG解码视频之保存成图片 源码

从零开始学习音视频编程技术(五)使用FFMPEG解码视频之保存成图片 源码 开发环境vs2010

2017-06-07

ffmpeg-3.2-win32-shared.zip

ffmpeg-3.2-win32-shared.zip

2017-06-07

ffmpeg-3.2-win32-dev.zip

ffmpeg-3.2-win32-dev.zip

2017-06-07

FFmpeg-full-SDK-3.2.rar

FFmpeg-full-SDK-3.2.rar

2017-06-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除