VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 686|回复: 19

PE文件格式解析--[2]回调的艺术:callback

[复制链接]
51_avatar_middle
online_admins 发表于 2019-1-4 17:11:46 | 显示全部楼层 |阅读模式
从宏观到微观
回顾:C32Asm

1、类的设计
        1) 多态、虚函数(公有继承情况下貌似没有用?)
        2) 父类的指针指向子类对象(子类的指针指向父类对象? -> 继承是一个逐渐“膨胀”的过程,并不是一种自适应的“进化”)
        3) 为什么要设计CLPESection类? -> PE文件按区段加载
       
2、代码的书写方式
        1) 函数声明:BOOL func(para1, para2, ..., &paraRet)
                typedef int BOOL
                typedef bool BOOL?       
        2) 函数定义:类状态机的方式
                DWORD dwLastRet = 0, dwFinalRet = 0 ;       
                if (失败)
                {
                        dwLastRet = -1 ;
                }
               
                if (0 == dwLastRet)
                {
                        ......
                        if (失败)
                        {
                                dwLastRet = -1 ;
                        }
                        ......
                }
               
                ......

3、回调的艺术(callback)
        针对PE文件中导入、导出、重定位表的解析方式采用回调的方式处理。
        Don't call me, I call you !  《Windows程序设计》
       
        系统:func(para1, para2, ..., callback)
                         {
                                ...
                                if (FALSE == callback(para3, para4, ..., ))
                                {
                                        ...
                                }
                                ...
                         }
       
        用户:callback(para3, para4, ..., )
                         {
                                ...
                         }
                         
        好处:系统给规则,用户写代码;在一定规则下给予适当的灵活性。
       
        函数的产生:汇编 -> C语言(函数) -> C++(类);语言的颗粒度越来越大,但灵活性越来越低、相应程序开发速度越来越高。
        函数的灵活性。
       
       
4、总结
        大到操作系统,小到回调;大到程序框架设计,小到多态特性都用到了“Don`t call me, I call you!”的指导思想。
       
5、疑问
        回调函数是类的普通成员函数么?(线程函数)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
教程在线观看地址:
https://www.bilibili.com/video/av39772763/?p=2
MP4高清视频下载地址:链接:https://pan.baidu.com/s/1Y362obiZqxuWYl2yXQxgmQ 提取码:bvbq
本节课件下载(回复后可见):
游客,如果您要查看本帖隐藏内容请回复

备注:VIP会员可免费下载本站所有资源(点击查看)
提示:通过购买VC驿站U盘打包(点击查看)也可加入终身Vip会员^_^




上一篇:PE文件格式解析--[1]格式的魅力
下一篇:PE文件格式解析--[3]PE结构
46_avatar_middle
在线会员 发表于 2019-1-8 22:41:24 | 显示全部楼层
好视频,值得看看!
18_avatar_middle
在线会员 发表于 2019-1-10 14:04:40 | 显示全部楼层
好好学习,天天向上
95_avatar_middle
在线会员 发表于 2019-1-10 18:04:29 | 显示全部楼层

好视频,值得看看!
78_avatar_middle
在线会员 发表于 2019-1-10 22:10:13 | 显示全部楼层
不错不错,谢谢
22_avatar_middle
在线会员 发表于 2019-1-11 16:49:14 | 显示全部楼层
PE文件格式解析--[2]回调的艺术:callbackPE文件格式解析--[2]回调的艺术:callbackPE文件格式解析--[2]回调的艺术:callback
52_avatar_middle
在线会员 发表于 2019-1-18 15:52:11 | 显示全部楼层
向大师学习,。。。。。。
61_avatar_middle
在线会员 发表于 2019-1-23 00:09:46 | 显示全部楼层
语言的颗粒度越来越大,但灵活性越来越低、相应程序开发速度越来越高,内存占用越来越大
36_avatar_middle
在线会员 发表于 2019-2-1 23:58:40 | 显示全部楼层
bvbqbvbqbvbq
98_avatar_middle
在线会员 发表于 2019-2-24 18:32:04 | 显示全部楼层
谢谢分享
学习
80_avatar_middle
在线会员 发表于 2019-3-3 18:38:03 | 显示全部楼层
PE文件格式解析--[2]回调的艺术:callback [修改]
89_avatar_middle
在线会员 发表于 2019-3-13 14:52:34 | 显示全部楼层
感谢~~~~~~~~~~~~~
85_avatar_middle
在线会员 发表于 2019-3-23 10:57:26 | 显示全部楼层
感谢分享,学习一下!
56_avatar_middle
在线会员 发表于 2019-3-28 01:46:16 | 显示全部楼层
感谢老大的无私奉献
74_avatar_middle
在线会员 发表于 2019-4-4 23:02:13 | 显示全部楼层
PE文件格式解析--[2]回调的艺术:callback
42_avatar_middle
在线会员 发表于 2019-4-5 10:43:18 | 显示全部楼层
PE文件格式解析--[2]回调的艺术:callback
36_avatar_middle
在线会员 发表于 2019-4-5 15:26:59 | 显示全部楼层
我来了hahahah
61_avatar_middle
在线会员 发表于 2019-5-9 20:09:03 | 显示全部楼层
66666666666666666666
82_avatar_middle
在线会员 发表于 2019-5-24 11:10:07 | 显示全部楼层
不错不错,感谢分享
23_avatar_middle
在线会员 发表于 2019-6-14 10:43:38 | 显示全部楼层
好好学习,天天向上
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-6-25 10:38

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表