接着前一篇,说到用callwindowproc替换hwnd,其实我后来想到了,这个还搞麻烦了,其实明白道理很简单,那lparam传入的是要指向text的缓冲区的地址,只要我们将这个地址填入一个字符串就行了,看代码:
LRESULT CALLBACK a(HWND h,UINT m,WPARAM w,LPARAM l){
if(m==WM_GETTEXT){
char *a=(char*)l;
//char sx[100]={0};
//return ::DefWindowProc(h,m,w,l);
strcpy(a,"sx");
return 1;
//return ::CallWindowProcA((WNDPROC)old,::h,m,w,l);
}
return ::CallWindowProcA((WNDPROC)old,h,m,w,l);
}
运行结果和上一篇的运行结果一样的,不过这一篇的方法很方便吧.