最近学习做CM和PE文件格式, 有些时候总是需要添加一个Section段来写代码,就写了这么个小工具,没啥技术含量,仅供对PE格式一点不懂的菜鸟参考!
用了这段时间发现有bug,有些exe程序加上新的Section段后不能运行
修订了一下
①在SetPeInfo(void *ImageOfPe, DWORD dwFileSize, DWORD dwOffset)函数里面添加这样2句话
//***********for a bug***************/
pNtHead->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT].Size = 0;
pNtHead->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT].VirtualAddress = 0;
//***********for a bug***************/
②将原来的SetPeInfo(void *ImageOfPe, DWORD dwFileSize, DWORD dwOffset)函数中的代码
//3.Add 0x200 to SizeofImage
pNtHead->OptionalHeader.SizeOfImage += 0x200;
修改为
//3.Add 0x1000 to SizeofImage
pNtHead->OptionalHeader.SizeOfImage += 0x1000;
由于已经告诉修订的源代码了,所以这里就只上传修订后的可执行程序
- 标 题:写了一个为软件添加Section段的工具(附源码)
- 作 者:blueapplez
- 时 间:2010-01-03 18:18:02
- 链 接:http://bbs.pediy.com/showthread.php?t=104430