首页
社区
课程
招聘
[旧帖] 请问:这几个结构是不是一样的呀? 0.00雪花
发表于: 2006-12-23 12:47 3951

[旧帖] 请问:这几个结构是不是一样的呀? 0.00雪花

2006-12-23 12:47
3951
我看了<<加密与解密>>第二版
关于输入表好像有以下几个名称,我觉得好像是一个意思
IMAGE_DATA_DIRECTORY,IMAGE_IMPORT_DESCRIPTOR, IMAGE_DIRECTORY_ENTRY_IMPORT
请问它们是不是一个意思呀?

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 45
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
不是
2006-12-23 12:53
0
雪    币: 201
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
当然是不一样的

  typedef struct _IMAGE_DATA_DIRECTORY {
      DWORD   VirtualAddress;
      DWORD   Size;
  } IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY;

  typedef struct _IMAGE_IMPORT_DESCRIPTOR {
      union {
      DWORD   Characteristics;  
      DWORD   OriginalFirstThunk;      
      };
      DWORD   TimeDateStamp;
      DWORD   ForwarderChain;
      DWORD   Name;
      DWORD   FirstThunk;                     
  } IMAGE_IMPORT_DESCRIPTOR;

#define IMAGE_DIRECTORY_ENTRY_IMPORT          1
2006-12-23 17:40
0
雪    币: 133
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
那么IMAGE_DATA_DIRECTORY的第一个成员是不是指向一个IMAGE_IMPORT_DESCRIPTOR结构呀

还有#define IMAGE_DIRECTORY_ENTRY_IMPORT          1
这在哪里有说明呀
2006-12-23 18:18
0
雪    币: 226
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
IMAGE_DATA_DIRECTORY 是DateDirectory字段的组成结构之一,DataDirectory共由16个IMAGE_DATA_DIRECTORY结构组成。

struct IMAGE_DATA_DIRECTORY
{
      DWORD   VirtualAddress;
      DWORD   Size;
  } ;
其中第一个成员VirtualAddress指向数据的起始RVA,Size表示该块的长度。

IMAGE_IMPORT_DESCRIPTOR结构是DataDirectory字段的第2成员IMAGE_DATA_DIRECTORY 结构中的VirtualAddress指向的。其他的IMAGE_DATA_DIRECTORY 结构的中的VirtualAddress字段并不是指向IMAGE_IMPORT_DESCRIPTOR.而是指向其他的数据块。
2006-12-23 19:06
0
雪    币: 133
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
哦,那#define IMAGE_DIRECTORY_ENTRY_IMPORT          1是怎么回事呢?
2006-12-23 19:39
0
雪    币: 201
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
IMAGE_DIRECTORY_ENTRY_IMPORT是在vc的winnt.h中定义的

#define IMAGE_DIRECTORY_ENTRY_EXPORT          0   // Export Directory
#define IMAGE_DIRECTORY_ENTRY_IMPORT          1   // Import Directory

IMAGE_DIRECTORY_ENTRY_IMPORT其实就是个序号,代表DataDirectory中的第二个IMAGE_DATA_DIRECTORY结构的成员VirtualAddress指向输入表的起始RVA(第一个是IMAGE_DIRECTORY_ENTRY_EXPORT,指向输出表)
2006-12-23 19:55
0
雪    币: 133
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
哦,好的,感谢你呀
2006-12-23 20:08
0
游客
登录 | 注册 方可回帖
返回
//