Win32/VC
文章平均质量分 84
来灵
抬头走路,低头做事。
展开
-
VS2019编译boost_1_79,生成32位和64位静态库
使用VS2019编译boost_1_79的32位和64位静态库记录。原创 2022-08-08 16:43:46 · 3340 阅读 · 4 评论 -
windows环境下升级mysql5.5.27到5.7.35
详细记录和介绍在windows上,将MySQL5.5.27,升级到5.7.35的过程,图文并茂,谢谢。原创 2022-07-15 17:15:48 · 1128 阅读 · 0 评论 -
Windbg实用手册
http://www.cppblog.com/weiym/archive/2012/06/07/177958.aspxWindbg工作中用的不多,所以命令老是记不住,每次使用都要重新查命令,挺烦。趁这次培训的机会好好测试和总结了一下,下次再用就方便多了。在这里一起共享一下,如果有错误,请指正。基本知识和常用命令(1) Windbg下载地址http转载 2016-02-15 10:46:28 · 661 阅读 · 0 评论 -
Windows操作系统的一些基本知识
本文来自《英特尔多核,多线程编程》一书。 对于程序员来说,操作系统是由本身的API(Application Programming Interface)定义的。API 包含了所有应用程序构造操作系统的函数调用,同时包含了相关的数据类型和结构。在Windows 中,API还意味着一个特殊的程序体系结构。Windows 从1.0 到3.1使用的是英特尔8086、8088和286微处理器的16原创 2011-12-30 16:19:58 · 6438 阅读 · 1 评论 -
VC++ 问题
1,关于Debug和Release之本质区别的讨论 一、Debug 和 Release 编译方式的本质区别 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 Debug 和 Release 的真正秘密,在于一组编译选项。下面列原创 2010-04-15 16:36:00 · 1602 阅读 · 0 评论 -
在Win32下用C++实现多线程读写锁
读写锁实际是一种特殊的自旋锁,它把对共享资源的访问者划分成读者和写者,读者只对共享资源进行读访问,写者则需要对共享资源进行写操作。这种锁相对于自旋锁而言,能提高并发性,因为在多处理器系统中,它允许同时有多个读者来访问共享资源,最大可能的读者数为实际的逻辑CPU数。写者是排他性的,一个读写锁同时只能有一个写者或多个读者(与CPU数相关),但不能同时既有读者又有写者。 现在Win32的API原创 2011-12-28 21:27:40 · 10390 阅读 · 2 评论 -
用C++实现Win32事件对象,同步线程
在Win32环境下编写多线程应用程序,经常要用到事件对象Event,来进行线程同步。与其相关的一组API包括:CreateEvent,SetEvent,ResetEvent,WaitForSingleObject,和CloseHandle。关于这些API的功能以及参数意义等这里就不多说了。下边,我封装了一个事件对象类,以及测试代码。已由本人在VS2005环境下编译,测试通过。MyEvent.h原创 2011-12-16 19:33:14 · 4851 阅读 · 1 评论 -
用C++实现自己的内存池
打开浏览器,搜索了下内存管理的概念,百度百科中是这样定义的:内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。说到内存,与之紧密相联系的一个概念就是指针。回想起上学那会儿,自己对指针是即喜欢,又害怕。因为学好了指针,就可以学好C,继而学好C++,但面对那些晦涩的概念,和程序运行中一些莫名其妙的指针越界、内存泄露……原创 2011-12-14 21:27:45 · 16797 阅读 · 4 评论 -
用C++封装Win32信号量,同步线程
在Win32环境下编写多线程应用程序,也会常用到信号量Semaphore来进行线程同步。与其相关的一组API包括:CreateSemaphore,ReleaseSemaphore,WaitForSingleObject,和CloseHandle。关于这些API的功能以及参数意义等这里就不多说了。下边,我封装了一个信号量类,以及测试代码。已由本人在VS2005环境下编译,测试通过。MySemap原创 2011-12-20 21:07:01 · 4713 阅读 · 0 评论 -
交叉编译之海思3515开发笔记
宿主机(host) :编辑和编译程序的平台,这里用的是基于X86的PC机,在安装了Windows XP系统的个人PC上编辑协议栈程序和模拟程序,使用VS2005开发工具。在个人PC上,将协议栈程序和模拟程序编译通过,测试无问题后,通过ftp上传到基于X86的编译服务器PC机,操作系统为Linux,进行交叉编译。交叉编译成功后,在指定目录下生成下列文件:libstackxxx.sox原创 2011-12-13 18:13:42 · 8842 阅读 · 0 评论 -
互斥对象锁和临界区锁性能比较
在Win32平台上进行多线程编程,常会用到锁。下边用C++实现了互斥对象(Mutex)锁和临界区(CRITICAL_SECTION)锁,以加深理解和今后方便使用。代码已在VS2005环境下编译测试通过。Lock.h#ifndef _Lock_H#define _Lock_H#include //锁接口类class ILock{public: virtual ~ILock原创 2011-12-10 22:54:26 · 14965 阅读 · 9 评论 -
用C++实现多线程Mutex锁(Win32)
本文目的:用C++和Windows的互斥对象(Mutex)来实现线程同步锁。 准备知识:1,内核对象互斥体(Mutex)的工作机理,WaitForSingleObject函数的用法,这些可以从MSDN获取详情; 2,当两个或更多线程需要同时访问一个共享资源时,系统需要使用同步机制来确保一次只有一个线程使用该资源。Mutex 是同步基元,它只向一个线程授予对共享资源的独占访问权。如果一个线原创 2011-12-07 20:38:57 · 30242 阅读 · 8 评论 -
XML和TLV打包解包性能比较
在开发协议的时候,经常会碰到打包解包的问题,不同的项目,不同的平台环境下会要求使用不同的打包解包格式,比如PC(Windows,Linux),或嵌入式设备(Arm),本文就使用XML(TinyXml库)和TLV打包解包的性能,做以比较。 有关TinyXml和TLV的介绍,在之前的博客TinyXml 读写XML文件和TLV 格式及编解码示例中可以看到。这里就不多说了。下边着重介绍一下我做的原创 2011-11-27 12:41:08 · 6608 阅读 · 1 评论 -
用select模式收发处理数据(跨平台)
本Demo程序模拟C/S传输数据。采用select模式,分别实现了一个客户端小程序和服务端小程序。已在VC2005和Fedroa 13下测试通过。因时间有限,功能简单,欢迎交流,学习! main.cpp#include "Sock.h"/*** 传输数据格式* ___________ _____________* | |原创 2011-08-26 21:31:48 · 4513 阅读 · 0 评论 -
用C读取INI配置文件
在Windows下可以用GetPrivateProfileString或GetPrivateProfileInt方便读取.ini配置文件内容,但是在Linux平台上就一筹莫展了。为了解决该问题,打算用C来读取.ini,即可不受平台的限制了。#define CONF_FILE_原创 2011-09-24 20:07:15 · 34545 阅读 · 12 评论 -
在对话框上加载图标或者位图
加载图标 CPaintDC dc(this); // device context for painting HICON hIcon=AfxGetApp()->LoadIcon(IDI_ICON1); if (hIcon && hIcon!=(HICON)-1) dc.DrawIcon(10,10,hIcon); 加载位图 CPaintDC dc(this)原创 2010-03-11 15:23:00 · 957 阅读 · 0 评论 -
EditControl 限制输入文本的l两种方法
下边是两种限制编辑框输入内容的方法。在VS2003里建立基于对话框的应用程序CMyEdit,打开资源视图,删除对话框上自带的确定和取消按钮。然后添加一编辑框控件,将其ID修改为IDC_MY_EDIT,通过类向导给该编辑框添加控件变量m_edit_LimitInput。 比如,现在欲想在编辑框里只能输入十进制数,即“0123456789”这些字符。 方法一: BOO原创 2009-01-04 12:24:00 · 4288 阅读 · 0 评论