当前位置: 首页 > wzjs >正文

深圳物流公司网站淄博网站备案

深圳物流公司网站,淄博网站备案,WordPress简约主题博客,html网页表单设计公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 Import Table 概述 IMAGE_IMPORT_DESCRIPTOR 结构详解 字段解析 IMAGE_THUNK_DATA 结构 IMAGE_IMPORT_BY_NAME 结构 结构图解 Import Table 概述 在 PE 文件中,Import …
  • 公开视频 -> 链接点击跳转公开课程
  • 博客首页 -> ​​​链接点击跳转博客主页

目录

Import Table 概述

IMAGE_IMPORT_DESCRIPTOR 结构详解

字段解析

IMAGE_THUNK_DATA 结构

IMAGE_IMPORT_BY_NAME 结构

结构图解


Import Table 概述

在 PE 文件中,Import Table(导入表)用于指定可执行文件或动态链接库需要从其他模块(通常是 DLL 文件)加载的符号(函数或变量)。

  • Import Table 是 PE 文件中负责动态链接机制的重要结构。
  • 它定义了哪些函数(或变量)需要从外部模块加载。
  • 常见的导入模块:kernel32.dll, user32.dll 等。

IMAGE_IMPORT_DESCRIPTOR 结构详解

IMAGE_IMPORT_DESCRIPTOR 是描述 PE 文件在运行时需要从外部 DLL 中导入的函数和模块信息的一种数据结构,位于 Import Table 中。

在 Windows SDK 头文件 winnt.h 中,IMAGE_IMPORT_DESCRIPTOR 的定义如下:

typedef struct _IMAGE_IMPORT_DESCRIPTOR {  union {  DWORD Characteristics;      // 0 for terminating null import descriptor  DWORD OriginalFirstThunk;   // RVA of _IMAGE_THUNK_DATA array  } DUMMYUNIONNAME;  DWORD TimeDateStamp;            // Time/Date stamp  DWORD ForwarderChain;           // Index of the first forwarder reference  DWORD Name;                     // RVA of the DLL name (ASCII)  DWORD FirstThunk;               // RVA of _IMAGE_THUNK_DATA array for IAT (Import Address Table)  
} IMAGE_IMPORT_DESCRIPTOR, *PIMAGE_IMPORT_DESCRIPTOR;  

字段解析

字段名描述
​OriginalFirstThunk导入名称表(INT)的RVA,指向IMAGE_THUNK_DATA数组(函数名称或序号)
​TimeDateStamp绑定时间戳(若为0,表示未绑定;若为0xFFFFFFFF,表示绑定无效)
​ForwarderChain转发函数的索引(通常为0,复杂场景下用于跨DLL转发)
​NameDLL名称的RVA(如"kernel32.dll")
​FirstThunk导入地址表(IAT)的RVA,加载时系统将用实际函数地址填充此表

IMAGE_THUNK_DATA 结构

IMAGE_IMPORT_DESCRIPTOR 引用的 _IMAGE_THUNK_DATA 数组用于保存导入的函数信息。

  • 按序号导入:最高位为1时,低31位为函数序号(如0x80000001表示序号1)。
  • 按名称导入:最高位为0时,值为指向IMAGE_IMPORT_BY_NAME的RVA。

_IMAGE_THUNK_DATA 的定义如下:

typedef struct _IMAGE_THUNK_DATA {  union {  PBYTE  ForwarderString; // Pointer to string in forwarders  PDWORD Function;        // Pointer to imported function  DWORD Ordinal;          // Ordinal value  PBYTE  AddressOfData;   // RVA of IMAGE_IMPORT_BY_NAME  } u1;  
} IMAGE_THUNK_DATA32, *PIMAGE_THUNK_DATA32;  
  1. ForwarderString: 字符串指针,表示转发器模块的符号名。

  2. Function: 动态加载后的函数指针。

  3. Ordinal: 按序号导入的函数(如果使用序号导入)。

  4. AddressOfData: 指向 IMAGE_IMPORT_BY_NAME 的 RVA。


IMAGE_IMPORT_BY_NAME 结构

用于描述每个导入函数的符号。

typedef struct _IMAGE_IMPORT_BY_NAME {  WORD Hint;       // 函数名称的提示序号,辅助快速查找。  BYTE Name[1];    // 函数名以 null 结尾的字符串。  
} IMAGE_IMPORT_BY_NAME, *PIMAGE_IMPORT_BY_NAME;  

字段解析:

  1. Hint: 提示值,用于帮助 PE 装载器快速定位函数。

  2. Name: 函数名称的字符串。


结构图解

http://www.dtcms.com/wzjs/554557.html

相关文章:

  • 网站建设 开发工具 pythonword怎么做网站
  • 网站怎做中国行业网站大全
  • 网站婚礼服务态网站建设论文wordpress开发ide
  • 网站建设标书网站建设 好公司
  • 调兵山网站建设网站开发的编程语言有哪些
  • 苏州知名网站建设设计公司品质好的深圳装修
  • 杭州比较好的网站建设公司手机网站网站建设
  • 江苏建设工程招投标网站网址大全123介绍
  • 超可爱做头像的网站定制小程序开发公司收费
  • 网站推广的搜索引擎推广现在开发个网站多少钱
  • 网站建设怎么管理业务员国外过期域名查询网站
  • 天津做胎儿鉴定网站网站不可以做哪些东西
  • 网站网站做员工犯法吗网络开发是什么专业
  • 购房者网站亚马逊跨境电商开店有风险吗
  • 网站开源模板移动开发技术
  • 为什么网站建设起来搜素不到做网站程序看什么书
  • 关于网站集约化建设的意见yandex网站推广
  • 龙岗网站建设公司网络服务智慧团建电脑登录入口官网
  • 国内搜索网站小米公司的企业文化建设
  • 网站发布与推广方式网站建设的知识和技能
  • 网站后台不能上传wordpress自动修改图
  • 合肥建设网站制作哪个好成都住房和城乡建设厅网站
  • 建一个营销网站的步骤安全的网站制作公司
  • 广东融都建设有限公司 公司网站wordpress 有支付接口
  • 福州中小企业网站制作百度号码认证平台官网首页
  • 如何看网站是否被降权怎么制作微信表情包
  • 网站建设与设计ppt模板下载公司网站设计教程
  • 网站制作维护费 归属女生做网站后期维护工作好吗
  • 泰国如何做网站推广模板网站如何引擎收录
  • 百度推广进入后是别的网站 说是服务器问题杭州临安网站建设