8.什么是HOOK

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

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

相关推荐
-森屿安年-6 分钟前
按身高排序
c++·算法
(Charon)1 小时前
【C++面试】vector底层原理:扩容、拷贝移动与迭代器失效
c++·面试
朔北之忘 Clancy2 小时前
青少年软编等考七级题解目录
开发语言·c++·青少年编程·gesp·csp·信奥赛·noi
汉克老师2 小时前
GESP2026年9月认证C++七级( 第一部分选择题(8~15题)精讲
c++·gesp·小学生·学c++编程
Mr_Macallon2 小时前
C++回顾(基础)(01)
c语言·开发语言·c++·学习
如意猴2 小时前
【C++】007 C/C++ 内存管理机制、malloc与new的区别及模板初阶
java·c++·算法
朝朝辞暮i3 小时前
C++ 第 32 课:main()、rclcpp::init()、spin()、shutdown()
开发语言·c++·算法
汉克老师3 小时前
GESP2026年9月认证C++一级( 第三部分编程题(1、新龟兔赛跑))精讲
c++·gesp·小学生·学c++编程
沫璃染墨3 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
wuminyu3 小时前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++