【C/C++】实现固定地址函数调用

在 C++ 里,函数地址在程序运行期间通常是固定的,不过在动态链接库(DLL)或者共享库(SO)中,函数地址可能会因为地址空间布局随机化(ASLR)而改变。所以我们想要通过地址直接调用函数,就需要先确定我们能找到函数地址->让函数地址固定。

通过VS的设置,我们是可以做到的。

1,右键项目的属性。

2,找到链接器中的高级

3,将随机基址修改为否

这里就设置完成,之后写代码进行调用。

先打断点获取函数的地址。

我们直接使用地址调用是不行的,因为函数调用需要是函数指针。

所以我们typedef或者using一下类型。

这样就通过地址调用函数成功。

相关推荐
全栈小精灵3 分钟前
Winform入门
开发语言·机器学习·c#
心静财富之门4 分钟前
退出 for 循环,break和continue 语句
开发语言·python
txinyu的博客6 分钟前
map和unordered_map的性能对比
开发语言·数据结构·c++·算法·哈希算法·散列表
Mr -老鬼21 分钟前
Rust适合干什么?为什么需要Rust?
开发语言·后端·rust
予枫的编程笔记24 分钟前
【Java集合】深入浅出 Java HashMap:从链表到红黑树的“进化”之路
java·开发语言·数据结构·人工智能·链表·哈希算法
ohoy30 分钟前
RedisTemplate 使用之Set
java·开发语言·redis
mjhcsp30 分钟前
C++ 后缀数组(SA):原理、实现与应用全解析
java·开发语言·c++·后缀数组sa
hui函数31 分钟前
如何解决 pip install 编译报错 ‘cl.exe’ not found(缺少 VS C++ 工具集)问题
开发语言·c++·pip
云栖梦泽41 分钟前
易语言Windows桌面端「本地AI知识管理+办公文件批量自动化处理」双核心系统
开发语言
r_oo_ki_e_1 小时前
java22--常用类
java·开发语言