pe的问题 ( 积分: 200 )

  • 主题发起人 主题发起人 answerhyh
  • 开始时间 开始时间
A

answerhyh

Unregistered / Unconfirmed
GUEST, unregistred user!
在Delphi中,如果已经把pe读到了指针为p的内存中,现在,请问,怎样才能取到。text节的地址呢?取到了。text节的地址以后,怎样才能把text节中的所有内容全部读出来呢?

另外。text节的构造是什么样子的啊?在Delphi中,以何种记录对应啊?
谢谢!
重金相谢!
 
不同的节有不同的结构.而且节的名字没有硬性规定,随便叫什么都行.
通常.TEXT节就是代码块.无需任何结构对应.那里都是机器码.
直接读到缓冲区就行了
 
那么请问,我已经确认指针P指向的是.text节的起始地址,怎么读出来啊?
 
既然你都把PE读到内存中了,又知道了.TEXT节的起始地址你都不会读,那你前面的代码怎么写的????
DOS头你怎么读的?PE头你怎么读的?节表头你怎么读的?
节表头里面有节的长度.既然地址和长度你都知道了为啥不会读呢?怀疑前面的代码是不是你写的
 
代码是我写的。
Dos头和PE节表头是因为有固定的数据格式,然而, .text section因为没有固定的格式,所以,我不会读了。呵呵,犯糊涂了,直接用指针读就可以了,问题已经解决,谢谢!

另外,可以问在Load之前,对PE文件做静态分析的时候,怎么找到执行入口吗?
谢谢!
 
自己去看PE头,AddressOfEntryPoint就是入口地址.记得RVA啊
 
后退
顶部