标题:VFP“结构类型”应用,PE导入表、导出表
只看楼主
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
结帖率:100%
已结贴  问题点数:20 回复次数:5 
VFP“结构类型”应用,PE导入表、导出表

    VFP“结构类型”应用,PE文件导入表、导出表

    导入表,是PE数据组织中的一个很重要的组成部分,它是为实现代码重用而设置的。
通过分析导入表数据,可以获得诸如PE文件的指令中调用了多少外来的函数,以及这些
外来函数都存在于哪些动态链接库里等信息。

    导出表,它描述了导出表所在PE文件向其他程序提供的可供调用的函数的情况。
   
    一般情况下,PE中的导出表存在于动态链接库文件里。导出表的主要作用是将PE中
存在的函数引出到外部,以便其他人可以使用这些函数,实现代码的重用。

    通常情况下,导出表存在于动态链接库文件里。但不能简单地认为EXE中没有导出表,
例如 WinWord.exe 文件里就有;也不能简单地认为所有的DLL中都有导出表,例如一些
专门存放资源文件的DLL里就没有导出表。

    导出表的存在可以让程序的开发者很容易清楚PE中到底有多少可以使用的函数,但如
果没有函数使用说明,开发者也只能通过名称、反汇编代码或者运行结果对函数的调用方
式、函数的功能等进行猜测。如同 WinAPI 函数一样,每位开发者可以通过MSDN网站获取
对每个API函数的声明、功能介绍、参数介绍,甚至调用实例。

    导出表的作用有两个:
    一是可以通过导出表分析不认识的动态链接库文件所能提供的功能。
    二是向调用者提供输出函数指令在模块中的起始地址。


    最新更新代码打包一起,有兴趣的可以下来看看,有问题可以共同探讨。

    代码包括 PE_FileHeade、PE_ICON、PE_Import和PE_Export 相关部份,主程序项目在:

    ...\PE_File\PE_FileHeader\PE_FileHeader.pjx
    ...\PE_File\PE_Resource\PE_Icon\PE_Icon.pjx
    ...\PE_File\PE_Import\PE_Import.pjx
    ...\PE_File\PE_Export\PE_Export.pjx

    代码采用相对路径搜索模块文件,测试时先保留这个目录结构,并且从主程序(PRG)运行。
    测试环境:Win10 + VFP9

    相关帖:
    https://bbs.bccn.net/thread-510517-1-1.html
    https://bbs.bccn.net/thread-510587-1-1.html
   
   
PE_File.rar (1.64 MB)





   

搜索更多相关主题的帖子: 导出 代码 文件 导入 函数 
2022-11-10 22:47
schtg
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:https://t.me/pump_upp
等 级:贵宾
威 望:67
帖 子:1355
专家分:2534
注 册:2012-2-29
得分:5 
高高高!谢谢!
2022-11-11 06:23
星光悠蓝
Rank: 9Rank: 9Rank: 9
来 自:山水甲天下
等 级:贵宾
威 望:48
帖 子:459
专家分:1116
注 册:2010-1-11
得分:5 

没有函数的参数,还是很难猜
2022-11-11 09:06
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用星光悠蓝在2022-11-11 09:06:34的发言:


没有函数的参数,还是很难猜

有难度,除非作者有明示或者可以猜想一下。
有些函数的名字怪到你怀疑人生,也有制作一大堆废函数来出蛊惑。
有些是没有名字的,是通过函数编号来处理。
反编逆向观察调用函数时参数入栈情况或者可以找到参数的个数和数据是什么东东。
2022-11-11 09:43
sam_jiang
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:542
专家分:781
注 册:2021-10-13
得分:5 
以前在看雪学院里看到有大牛反汇编可以得出函数的参数,可惜太深奥,我不会。
2022-11-11 12:34
asdf_123000
Rank: 4
等 级:业余侠客
威 望:1
帖 子:262
专家分:203
注 册:2012-12-20
得分:5 
学习
2022-11-11 12:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-510610-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.052995 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved