DestroyWindow简单的说就是删除销毁一个窗口,它只需要提供窗口的句柄,我们通过易语言主窗口下载入两个子窗口,但是在,子窗口我们需要一个按钮,它的功能就是调用DestroyWindow来销毁这个子窗口,当我们hook这个DestroyWindow时,那么你就无法关闭,就可以实现我们的目的,这就是本课视频的大体思路。
DestroyWindow
.版本 2 .DLL命令 DestroyWindow, 逻辑型, "user32", "DestroyWindow" .参数 hWnd, 整数型, , 0
hook
.版本 2 .子程序 hook .如果 (h.安装Hook (“user32.dll”, “DestroyWindow”, 到整数 (&mydw)) = 真) 信息框 (“Hook成功!!”, 0, , ) h.开始Hook () .否则 信息框 (“Hook失败!!”, 0, , ) h.卸载Hook ()
回调
.版本 2 .子程序 mydw .参数 hwnd, 整数型 .判断开始 (hwnd ≠ 0) 信息框 (“关闭已经被劫持,你无法关闭窗口”, 0, , ) .默认 hook ()
子窗口关闭按键
.版本 2
.子程序 _超级按钮1_被单击
DestroyWindow (窗口2.取窗口句柄 ())
注入方式
我们也可以通过注入方式来实现,本课视频演示采用了EIP注入和远程线程注入。
.版本 2 hook () _临时子程序 () ' 在初始化代码执行完毕后调用测试代码 返回 (0) ' 返回值被忽略。 .子程序 _临时子程序 ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。 .子程序 hook, , 公开 .如果 (h.安装Hook (“user32.dll”, “DestroyWindow”, 到整数 (&mydw)) = 真) 信息框 (“Hook成功!!”, 0, , ) h.开始Hook () .否则 信息框 (“Hook失败!!”, 0, , ) h.卸载Hook () .如果结束 .子程序 mydw .参数 hwnd, 整数型 .判断开始 (hwnd ≠ 0) 信息框 (“关闭已经被劫持,你无法关闭窗口”, 0, , ) .默认 hook ()
教程获取下载:
百度网盘链接:https://pan.baidu.com/s/158ikKVjIwaoF4438MG4fhA
提取码:加QQ群:521068947 群文件下载
资源教程交流①群:521068947
511遇见QQ: 272586593