恭喜广州新薇第网络科技有限公司周志刚获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网恭喜广州新薇第网络科技有限公司申请的专利一种模块回调函数参数不匹配的修复方法及相关设备获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN114428636B 。
龙图腾网通过国家知识产权局官网在2025-04-04发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202011172062.2,技术领域涉及:G06F8/72;该发明授权一种模块回调函数参数不匹配的修复方法及相关设备是由周志刚设计研发完成,并于2020-10-28向国家知识产权局提交的专利申请。
本一种模块回调函数参数不匹配的修复方法及相关设备在说明书摘要公布了:本发明提供了一种模块回调函数参数不匹配的修复方法以及相关设备,包括:获取修复程序中回调函数类型中包含的新建参数和源程序上层回调函数中包含的原始参数;比较新建参数和原始参数,将所述新建参数中与所述原始参数中的不同的参数作为新增参数信息;查找所有源程序中关于原始参数回调函数的回调指针,并利用所回调类回调指针对应的虚函数接口,通知上层允许基本代码调用新增参数信息对应的扩展代码来修复,进而忽略掉所述新增参数信息,从而将收到数据的处理逻辑与底层数据进行解耦合,通知上层允许基本代码调用新增参数信息对应的扩展代码来修复,进而忽略掉所述新增参数信息,以解决参数不匹配导致程序执行出现崩溃的问题。
本发明授权一种模块回调函数参数不匹配的修复方法及相关设备在权利要求书中公布了:1.一种模块回调函数参数不匹配的修复方法,其特征在于,包括:获取修复程序中回调函数类型中包含的新建参数和源程序上层回调函数中包含的原始参数;比较所述新建参数和所述原始参数获得新增参数;其中,所述新增参数为所述新建参数中与所述原始参数中的不同参数;所述新增参数的信息包括参数个数、参数命名和参数类型;查找所有源程序中关于原始参数回调函数的回调指针;调用所述回调指针对应的虚函数接口,并基于hook技术实现程序修复;所述虚函数接口的查找过程包括如下步骤:编写一个具有嵌套类的新建类,所述嵌套类内定义了虚函数接口,以继承源程序中的类,实现读取数据产生回调的处理逻辑;查找并记录源程序中所有继承自源程序的类,并记录所述继承自源程序类的创建地址;并查找所述继承自源程序的类的调用虚函数接口的地址;其中,所述查找调用虚函数接口的地址的过程通过汇编代码实现;所述查找虚函数接口地址的过程包括:解析模块中移植的可执行的文件,并解析出只读字段;其中,所述只读字段中存储有每个类的名称和对应的续表;遍历所述只读字段,通过名称检索方式查找所有继承类,进而创建目标类;遍历所述续表中的类,并将所述目标类对应的第一个虚函数作为析构函数,并将所述析构函数对应续表的位置作为匹配函数进行调用;记录所有满足查找条件的目标类名称和和对应的类的相对于模块的起始地址和偏移地址,进而获取模块的真实加载内存地址;所述修复方法还包括建立查找链表,其包括:将所述目标类的起始地址和偏移地址均存储到查找链表中;并通过对比创建的实例化对象的大小和存储续表的地址来对应于创建的目标类;所述基于hook技术实现程序修复的过程包括:建立多个堆栈,并在所述堆栈中分别压入寄存器的值,其中,所述堆栈与新建参数个数相同;从实例化指针中取出对象的虚表指针;新建对象指针寄存器,并将对象指针赋值给所述对象指针寄存器;调用虚表的第二个函数,并将所述第二个函数的调用指令修改为跳转指令,忽略并弹出多余的参数。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人广州新薇第网络科技有限公司,其通讯地址为:511466 广东省广州市南沙区黄阁镇市南公路黄阁段230号(自编一栋)301房;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。