- 博客(7)
- 资源 (7)
- 收藏
- 关注
转载 深度剖析消息反射机制
摘要: 在前面我们分析了控件通知消息WM_NOTIFY,和WM_NOTIFY紧密联系的还有一个MFC新特性:消息反射。本文中,我想就这个问题作一个全面的论述,如果有错误,还望各路大虾批评指正。 什么是消息反射? 在windows里面,子控件经常向父控件发送消息,例如很多子控件要绘制自己的背景,就可能向父窗口发送消息WM_CTLCOLOR。对于从子控件发来的消息,父控件有可能在处理
2011-06-25 22:07:00 640
转载 Invalidate与UpdateWindow
void Invalidate( BOOL bErase = TRUE ); 该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘窗口。
2011-06-19 18:40:00 843
原创 关于bind函数~
MSDN中的bind int bind ( SOCKET s, const struct sockaddr FAR* name, int namelen );关注第二个参数The SOCKADDR structure varies depending on the pr
2011-06-18 00:24:00 9696 5
原创 计算字符串长度的优化代码·~
strlen的优化代码~~~ mov ecx,FFFFFFFFsub eax,eaxrepnz ;串操作直到ecx=0scasb ;把al内容与edi指定的在附加段中的数据逐个比较not ecx ;取反dec ecx ;一开始就是-1,取反等于多了一个1,所以这边减一je xxxxxx ~
2011-06-07 22:31:00 919
原创 汇编除法优化~
汇编里面的除法优化就是乘以除数的倒数a/11 汇编代码:mov eax,2E8BA2E9imul ecxsar edx,1;edx中存放的是乘法运算的高位双字节,即相当于a*2E8BA2E9右移了32位,sar再移位1位,;edx=(a*2E8BA2E9)>>(32+1) =a*0.090909090940840542316436767
2011-06-07 22:17:00 2309
原创 一段代码的反汇编
C代码:int main(void){ if(FindWindow(NULL,"计算器")) return 1; else return 5;} 用VC6编译,设置优化选项Maximize Speed。反汇编代码如下 push 406030push 0call dword ptr[40509c] ;Find
2011-06-07 20:08:00 723
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人