- 博客(15)
- 资源 (1)
- 收藏
- 关注
原创 __declspec(novtable)关键字
__declspec (novtable )关键字,表示这个类不生成虚函数表,但是继承类不影响(不管基类是否使用了关键字)。class Base1{ virtual void f(){} virtual void g(){}};class __declspec(novtable ) Base2{ virtual void
2014-10-01 20:29:29
4218
原创 ATL中宏定义offsetofclass的分析
近日学习ATL,通过对宏定义offsetofclass的解惑过程,顺便分析下虚函数表,以及通过虚函数表调用函数的问题。1 解开ATL中宏定义offsetofclass的疑惑#define _ATL_PACKING 8 #define offsetofclass(base, derived) ((unsigned long)(static_cast ((derived
2014-10-01 17:00:18
3217
原创 GDI,CxImage,GDI+之比较
GDI:常用的绘图方式,但是压缩算法太差,大图压缩失真严重,并且支持图片类型太少,支持bmp.一些绘图方法参考另一文章:图片镂空算法集合CxImage: 是一个开源库,功能强大,其官方主页http://www.xdp.it/cximage/常用的5种:bmp,gif,png,jpg,ico其他类型:tif,tga,pcx,wbmp,wmf,jp2,jpc,pgx,pnm,ras
2009-07-20 14:11:00
6853
1
原创 完成端口(IOCP)怎么判断某个连接是否断开
完成端口函数:BOOL GetQueuedCompletionStatus( HANDLE CompletionPort, LPDWORD lpNumberOfBytes, PULONG_PTR lpCompletionKey, LPOVERLAPPED* lpOverlapped, DWORD dwMilliseconds);
2008-07-02 16:35:00
7453
原创 解决移动硬盘符不见的问题
问题的出现: 今天拿到一台服务器,插上光驱,重新装了系统2003,C盘为FAT格式(GHOST恢复),而其他盘为NTFS格式,所以系统会提示是否转NTFS格式(选择了YES,重新启动自动转换格式).当用插入移动硬盘时,发现盘符不见了.问题的解决: 1.查看连接线是否有问题,或者电压不足.拿到本本上一切正常,排除了这个问题. 2.查看驱动是否正常工作.右键我的电脑
2007-04-08 23:55:00
8577
2
原创 进程调试--数组溢出,影响其他变量
一直做的棋牌系统,调试是个问题,因为要启动的是另一个进程.所以一直多是以输出文件的方式来进行的.确实有些BUG输出文件的方式并不能解决和找到问题. 我先来描述一下碰到的问题: 其中一个int m_nSize变量一般只有两个值(0或者1),在运行过程过突然变成-1,所以造成图片数组导入异常.问题的关键是为什么变量会变?查找了所有的m_nSize调用的地方,并且是N遍
2007-04-02 10:05:00
5153
1
原创 窗口淡入淡出效果的实现
1. 简介函数: SetLayeredWindowAttributes Header Declared in Winuser.h, include Windows.h Import library User32
2007-02-10 22:26:00
7112
5
转载 DLL(Dynamic Link Libraries)专题[转帖]
原帖地址:http://www.microsoft.com/china/community/program/originalarticles/techdoc/dll.mspxDLL(Dynamic Link Libraries)专题目录 引言 调用方式 MFC中的DLL DLL入口函数 关于约定 关于DL
2006-11-24 17:40:00
4998
转载 如何调试MFC中的内存泄漏[转帖]
注释:红色部分为本人增加 首先,应该是MFC报告我们发现内存泄漏。注意:要多运行几次,以确定输出的内容不变,特别是{}之间的数值,不能变,否则下面的方法就不好用了。 实际开发过程中,序号基本是多变的,所以需要变通1。如果有连续序号泄露点以尝试猜测一个,虽然在变,但总是在一定范围的,运气好还真能碰到2。看泄露的字节,查找new的一些结构体是否大小一致(笔算结构体大小时记的
2006-11-15 10:22:00
5665
原创 图片镂空算法集合[图]
在开发界面及棋牌游戏过程中,需要很多镂空的图片,而且图片形式一般比较固定.所以封装了几种常见的镂空方法.1. 用于没有掩码图,只有指定透明色,不进行伸缩void DrawTransBitmap( HDC hdcDest, // 目标DC int nXOriginDest,
2006-11-11 03:09:00
12454
3
原创 QQ头像变灰算法[图]
1.查看QQ不在线图标,目测由白灰黑,三种颜色.2.打开画图工具,查看了灰色的RGB......惊喜.......原来灰色的RGB 3个参数多是相同的.3.所以推断每个不在线头像的像素是在线头像R G B 的平均值. 网友"string"给了个比较专业的公式(R*0.299 + G*0.587 + B*0.114 )4.操作:取得一个像数,然后取得R ,G ,B,计算平均,然后将平均值
2006-11-07 00:46:00
10172
6
转载 字符集之间转换(UTF-8,UNICODE,Gb2312)
字符集之间转换(UTF-8,UNICODE,Gb2312)特搜集了UTF-8,UNICODE,Gb2312他们3个之间的相互转换.UTF-8: 1~3字节可变UNICODE: 2字节一个字符GB2312: 2字节一个字符例子: “你”字的UTF-8编码: E4 BD A0 11100100 10111101 10100000“你”的Unicode
2006-11-07 00:42:00
40169
11
原创 实现QQ主界面效果[图]
实现QQ主界面的滚动效果[图]1. GC实现QQ的主界面截图2.实现方法最主要的计算各个组和头像的位置信息,有了位置信息,画图就很方便了.(画图请参考本专栏其他文章)2.1 一些概念: 项 : 组和头像,如果组合并,那么这个组只有组1项,如果展开那么 组+ 组成员的个数m_scrollIndex : 滚动了几个项(滚动时计算)m_scrollY : 实际滚动的像数(通过m_scrollInde
2006-11-07 00:37:00
9435
10
原创 GDI画图的几种方式(小游戏不闪烁)
1 画图方式: 1.1 使用临时DC,先将要画的界面全部画到临时DC,到最后才全部帖回原DC,这样就不会出现闪烁. 1.2 创建的GDI对象要删除,不然会造成泄露. 将新对象选进DC,一般要保留旧的对象,然后用完新对象,把老对象选回DC. 一般Create*** 函数多要记得Delete*** GetDC Relea
2006-11-07 00:09:00
5335
2
转载 RichEdit中插入GIF动画(使用QQ的ImageOle.dll)
最近做聊天记录,需要显示GIF动画.看了很多文章,基本多是用QQ的ImageOle.dll或者Gif89a.dll来实现.当然还有其他方法,包括Static控件中使用CPictureEx来实现GIF. ImageOle.dll使用了GdiPlus.dll,制作安装包时最好把这个dll也带上( XP系统自带)(本文的代码来自其他网友)参考a: http://www.cod
2006-07-05 16:35:00
14367
3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人