PE 标头中绑定导入和延迟导入之间的差异

new*_*bee 3 reverse-engineering portable-executable

任何人都可以解释一下 PE 标头中绑定导入和延迟导入之间的差异。我参考了几本书,但我无法清楚地理解它的概念。任何人都可以帮助我。

Ser*_*dev 6

绑定导入意味着在 PE 导入表中存储具有这些函数的特定版本 DLL 的导入函数的固定(绑定)地址。在程序编译和链接阶段,链接器计算绑定地址并将其写入导入表。

延迟导入意味着在导入表中而不是导入函数地址中包含称为“延迟加载助手”(有时也称为“thunk”)的特殊程序部分的地址,该部分在第一次调用函数时替换真实的导入函数地址。后续函数调用使用延迟加载助手写入的真实函数地址。

这是一个概念。例如,您可以在 Iczelion 的 PE 教程中找到详细信息