Windows PE格式标题混乱

Windows PE格式标题混乱,windows,binary,portable-executable,Windows,Binary,Portable Executable,我在PEView中查看一个可执行文件,发现导入表的DataDirectory中列出的RVA为0x649c,导入表在文件中的偏移量为0x649c,这意味着导入表在内存中的偏移量与在磁盘中的偏移量相同。我检查了部分标题,似乎尽管每个部分的VirtualSize和SizeOfRawData不同,但RVA和PointerToRawData始终是相同的。如果大小不同,这怎么可能呢?这是同一个字段-如果您查看的是磁盘上的文件,它就是文件偏移量。如果加载模块,加载程序将用内存中的RVA替换此值。您的计算机具有

我在PEView中查看一个可执行文件,发现导入表的DataDirectory中列出的RVA为0x649c,导入表在文件中的偏移量为0x649c,这意味着导入表在内存中的偏移量与在磁盘中的偏移量相同。我检查了部分标题,似乎尽管每个部分的VirtualSize和SizeOfRawData不同,但RVA和PointerToRawData始终是相同的。如果大小不同,这怎么可能呢?

这是同一个字段-如果您查看的是磁盘上的文件,它就是文件偏移量。如果加载模块,加载程序将用内存中的RVA替换此值。

您的计算机具有较新的4 kb硬盘驱动器扇区大小,因此偏移量相同。

我认为加载程序刚刚将映像库添加到RVA。您能解释加载程序如何“生成”这个新的RVA?我一点也不记得细节了。从msdn网站获取。