子类化我出现了点问题....,就是子类化后我发现我的静态文本控件在创建的时候没有发送WM_CREATE之类的消息,只发送了WM_PAINT后85 87这两个这两个没查是什么(我用OD跟踪得到的)
还有我吧我的一个静态控件子类化后,发现只要是向这个控件SetDlgItemText就会出内存读写错误,跟踪了下野没发现什么问题,但肯定是这个过程地址改了后出现的问题!我发下部分代码吧
这个事我创建新地址的
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
invoke
GetDlgItem,hWnd,1012 ;1012是我静态文本框的ID
invoke
SetWindowLong,eax,GWL_WNDPROC,addr _ProcControl ;_ProcControl是我的新地址
mov
lpOldProcStatic,eax;这是旧地址保存
这是过程
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_ProcControl
proc
uses ebx edi esi hWnd,wMsg,wParam,lParam
mov
eax,wMsg
.if
eax==WM_CREATE
invoke
SetClassLong,hWnd,GCL_HCURSOR,hCur
.else
invoke
CallWindowProc,lpOldProcStatic,hWnd,wMsg,\
wParam,lParam
ret
.endif
xor
eax,eax
ret
_ProcControl
endp