8.什么是HOOK

程序编译的本质是,首先计算机它只能看得懂机器码也就是只能看得懂数字,机器码学起来很费劲然后就创造了编译器这个东西,编译器它懂机器语言所以它可以跟机器沟通,而我们人可以跟编译器沟通,人跟编译器的语言就是各种各样的编程语言(c/c++、java),然后程序编译的本质就是把人可以看懂的编程语言源代码翻译成计算机可以看懂的计算机语言(二进制数字),编译之后会在磁盘上生成一个文件,这个文件中保存了要让计算机做的每一件事的细节。

在双击exe文件时操作系统会把它加载到内存然后会给它一部分处理器的控制器,然后处理器就顺着exe中记录的细节一条一条的执行(执行流程),而HOOk是在想改变一个程序的执行流程,比如打开一个程序非要激活码没有激活码不让玩,我们想绕过激活码这就是改变程序的执行流程,绕过激活码有两种方式一种是直接修改硬盘上的exe程序这种叫补丁技术/破解技术,另一种是在内存中修改这种叫HOOK技术/内存补丁技术。

相关推荐
海兰14 分钟前
【游戏】迷雾镇(Mist Town)AI 沙箱游戏详细设计与部署指南(附源代码)
人工智能·游戏
Frank学习路上2 小时前
【C++】面试:关键字与语法特性
c++·面试
Irissgwe2 小时前
数据结构-栈和队列
数据结构·c++·c·栈和队列
点云侠3 小时前
PCL 生成三棱锥点云
c++·算法·最小二乘法
.道阻且长.4 小时前
C++ string 操作指南:接口解析
java·c语言·开发语言·c++
laplaya4 小时前
使用 vcpkg 管理 C++ 项目中的依赖
开发语言·c++
陈天伟教授5 小时前
图解人工智能(60)人工智能应用-AI游戏
人工智能·游戏
魔士于安5 小时前
Shader forge技术美术专用
游戏·unity·游戏引擎·贴图·技术美术·模型
blueman88885 小时前
VS2022 切换定义(F12 / Go to Definition)反应慢
c++·visual studio
凡人叶枫6 小时前
Effective C++ 条款35:考虑 virtual 函数以外的其他选择
java·c++·spring