IMAGE_OPTIONAL_HEADER的MSDN页面提及文件和部分对齐。
然后SizeOfHeaders
成员的描述如下:
以下项目的组合大小,四舍五入为FileAlignment成员中指定的值的倍数。
- IMAGE_DOS_HEADER的e_lfanew成员
- 4字节签名
- IMAGE_FILE_HEADER的尺寸
- 可选标题的大小
- 所有版块标题的大小
计算组合大小很简单,但如何将总数舍入为FileAlignment
成员值的倍数(例如512字节)?
我已经得到了各种标题的总和。然后我使用512的模数来得到余数。我猜这个剩余部分需要以某种方式填充。