c - 创建要动态链接的包装库
问题描述
我知道另一个库的每个函数都可以使用 dlopen 和 dlsym 并调用我得到的指针包装到我的库中的另一个函数中。我什至知道我可以创建类似跳转表的东西,然后实现类似void __declspec(naked) func (void) { __asm{jmp[dlopened_addr]}; }
. 那不是问题。问题是我无法重新导出其他可以删除的符号,例如指向运行时使用的结构的指针。有什么解决办法吗?也许修改运行时符号表或重定位表?任何解决方案。Ps 需要使用由另一个 libc 的链接器(如https://github.com/mittorn/custom-linker)链接的函数。
解决方案
推荐阅读
- javascript - Nuxt.js - 全局导入自定义 NPM 包
- html - 在重用 html 组件时,是否可以将该组件的 css 和 bootstrap(cdns) 设置为该组件,并且不要让它干扰其他页面;
- python - 将 Python 代码块转换为一行
- generics - 如何在结构/特征、常规变量声明和函数中最好地实现泛型?
- linux-device-driver - Linux Driver 中 SPI Master 的原始访问,用于 SPI 设备访问
- c++ - 如何将犰狳添加到 Visual Studio 代码 2019?
- php - 如何在 PHP 中使用 JSON 编码的数组
- azure - 点对点客户端可以看到虚拟网络中的虚拟机,但不能访问点对点资源
- javascript - 将 NPM javascript 库添加到 Laravel 8
- javascript - Bootstrap 5 [beta] 不再有 jQuery - 汉堡无法打开/折叠