windows – 如何从页眉和/或页脚确定PE可执行文件的大小
发布时间:2020-12-14 04:25:43 所属栏目:Windows 来源:网络整理
导读:假设您有一个数据流或要雕刻的字节块,您如何确定可执行文件的大小? PE可执行格式中有许多标题,但我使用哪些标题部分来确定(如果可能)可执行文件的总长度? 这是文件格式的图片. 解决方法 如果PE文件格式正确,则计算可以简化为(伪代码): size = IMAGE_NT_HE
假设您有一个数据流或要雕刻的字节块,您如何确定可执行文件的大小?
PE可执行格式中有许多标题,但我使用哪些标题部分来确定(如果可能)可执行文件的总长度? 这是文件格式的图片. 解决方法
如果PE文件格式正确,则计算可以简化为(伪代码):
size = IMAGE_NT_HEADERS.OptionalHeader.SizeOfHeaders foreach section_header in section_headers: size += section_header.SizeOfRawData 哪里: > SizeOfHeaders是 SizeOfHeaders字段给出了所有头的长度(注意:包括16位存根). >每个节头都是 记事本示例(Windows 10): > SizeOfHeaders:0x400 >每个部分的SizeOfRawData: > .text:0x15400 (注意:SizeOfRawData在下图中称为原始大小): 总结一切: >>> size_of_headers = 0x400 >>> sec_sizes = [0x15400,0x800,0x1a00,0x19c00,0x1600] >>> size_of_headers + sum(sec_sizes) 207872 >>> 总大小:207872字节. 验证: 注意:上述计算不考虑PE是否形成错误或是否存在叠加. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows – 强制在WSUS服务器上安装更新
- windows – netsh winsock reset – 在我使用命令之前,它做
- windows-phone-7 – mgwt vs. GWT Mobile – 平台兼容性
- windows-xp – 通过无线适配器连接两台笔记本电脑,无需无线
- 在没有安装JRE的Windows中将java程序作为exe运行
- dokan sshfs for windows
- 如何将Windows 2003 Server计划任务移动/复制到Windows 201
- windows-8 – Expression Blend中的“星形”测量是什么?
- windows-services – 使用.NET Core的Windows服务
- MySQL_8.0.15_Windows10_X64 安装教程
推荐文章
站长推荐
热点阅读