首页
社区
课程
招聘
[求助]为何Hook DialogProc后,界面假死(附源码)
发表于: 2010-5-11 23:32 4828

[求助]为何Hook DialogProc后,界面假死(附源码)

2010-5-11 23:32
4828
原来的处理过程是用  DialogBox(hinstExe, MAKEINTRESOURCE(IDD_DIALOGMAIN), NULL, DialogProc); 注册的..

我想HOOK DialogProc
就调用   SetWindowLong(hWnd,GWL_WNDPROC,(LONG)new_DialogProc);设置新的窗口处理, 然后在new_DialogProc中处理后,再调用原来的DialogProc..

但这样会出现界面假死....请问应该如何处理..

源码如下: 点 "替换"就会假死.

[课程]Android-CTF解题方法汇总!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 1787
活跃值: (340)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2

    HWND hWnd = FindWindow(TEXT("#32770"), TEXT("GyHookHelper"));
    oldProcAddr = (ULONG)GetWindowLong(hWnd,DWL_DLGPROC);

    pHookDlgProcOld = (PVOID)(oldProcAddr); 
    //改下参数,DWL_DLGPROC 而不是以前那个GWL_WNDPROC
    SetWindowLong(hWnd,DWL_DLGPROC,(LONG)NewDlg_Proc);
2010-5-12 12:20
0
雪    币: 244
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
是这个原因..现在可以了..谢谢
2010-5-12 16:25
0
游客
登录 | 注册 方可回帖
返回
//