#define IMAGE_SIZEOF_SHORT_NAME 8
typedef struct _IMAGE_SECTION_HEADER {
BYTE Name[IMAGE_SIZEOF_SHORT_NAME];
union {
DWORD PhysicalAddress;
DWORD VirtualSize;
} Misc;
DWORD VirtualAddress;
DWORD SizeOfRawData;
DWORD PointerToRawData;
DWORD PointerToRelocations;
DWORD PointerToLinenumbers;
WORD NumberOfRelocations;
WORD NumberOfLinenumbers;
DWORD Characteristics;
} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER;
扩大节
- 分配一块新的空间,大小为S。
- 将最后一个节的 SizeOfRawData 和 VirtualSize改成N。
- N = (SizeOfRawData 或 VirtualSize 内存对齐后的值) + S。
- 修改 SizeOfImage大小。
注意:如果在新增的节中增加代码,那么新增的节应该要有可执行的属性。