主题:如何替换掉桌面窗口的WndProc?
jingle
[专家分:0] 发布于 2005-10-27 22:05:00
如何替换掉桌面窗口的WndProc?
我试过用SetWindowLong带GWL_WNDPROC参数,但没有用!
哪位高手,达人请指教!![em3][em3][em3]
回复列表 (共3个回复)
沙发
vrace [专家分:3590] 发布于 2005-10-29 22:52:00
你想替换其他应用程序的 WndProc? 好像 HOOK 和 代码插入 可以干这种事
板凳
tongshulin [专家分:10] 发布于 2005-12-22 11:46:00
你是想不用wndproc吧,在创建窗口时改掉它的处理函数名就可以了啊
3 楼
cgd0282 [专家分:160] 发布于 2005-12-24 09:24:00
SetWindowLong怎么会没用呢?
WNDPROC MainTVProc;
BOOL WndMainTVProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
MainTVProc = (WNDPROC)SetWindowLong(hWndTreeView, GWL_WNDPROC, (LONG)WndMainTVProc);
BOOL WndMainTVProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
//...
return CallWindowProc(MainTVProc, hWnd, uMsg, wParam, lParam);
}
我来回复