Windows/C++/DLL:加载 DLL 后,函数指针偏移量从内存中的 DLL 基地址是否始终相同?

问题描述

假设我编译了一个带有静态非成员导出函数的 DLL。

然后在另一个应用程序中,我使用 LoadLibrary 加载 DLL。

然后,我从内存中DLL的基地址找到导出函数的偏移量(基地址减去函数指针)。

如果我再次加载库(在同一台机器上,或另一台机器上,或在不同版本的 Windows 上,或在 VM 中,等等)我可以可靠地期望计算具有 [baseAddress + 先前计算的偏移量] 的相同函数的地址?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)