一种转换动态库的生成方法以及装置制造方法及图纸

技术编号:33133042 阅读:20 留言:0更新日期:2022-04-17 00:53
本申请公开一种转换动态库的生成方法,该方法可以实现根据待调用动态库的接口信息自动,生成能够调用该待调用动态库的转换动态库,从而不需要和现有技术一样,需要人工手动编程开发,避免了人工手动编程过程中出现由于操作错误所导致的编程错误、开发代码质量下降、排查问题成本高的问题,从而提高了生成调用待调用动态库的转换动态库的便捷性以及健壮性,提高了生成调用待调用动态库的转换动态库的开发效率以及降低了对开发人员的技术要求。求。求。

【技术实现步骤摘要】
一种转换动态库的生成方法以及装置


[0001]本申请涉及计算机
,尤其涉及一种转换动态库的生成方法、装置。

技术介绍

[0002]动态库作为操作系统结构中必不可少的一部分,用于将一个复杂的程序分解为多个不同的部分,提供给不同开发者/厂家来完成。
[0003]由于开发者不同,动态库各个部分功能也不同。所以,不同动态库接口设计可能不同,一个动态库内部不同功能的接口格式可能不同。每次调用都要针对不同的动态库,不同的功能接口,开发不同的调用代码,实现相似的使用过程。动态库和接口数量可能很大,差异也可能很大,导致包装为同一个使用流程的过程会非常繁杂,人工操作非常容易出错。包装为同一个使用流程需要消除动态库之间的差异和接口之间的差异,有些差异,看起来很小,其实需要开发者能深刻理解动态库相关技术细节,具有较强的代码开发能力,存在很高的技术门槛。
[0004]然而,现有的绝大多数动态库的调用,相似的动态库调用过程,不同情况下可能会不同,一旦有差异,就要完全重新开发动态库和接口,如果发生变化,相当于增加了一个新的动态库或者一个新的接口。并且需要人工手动编程调用动态库的代码,并且,若调用的动态库发生变化后,还需要人工手动修改调用动态库的代码。然而,人工手动编程开发的过程中,会存在人工手动编程过程中容易出现由于操作错误所导致的编程错误、开发代码质量下降、排查问题成本高的问题,导致需要人工花费大量时间反复查询错误原因以及纠正错误编程,进而导致在这过程中会耗费大量的人力、时间成本。

技术实现思路

[0005]本申请提供一种转换动态库的生成方法,以可以以高效率,高质量,低成本的方式,为待调用动态库生成包含兼容转换功能的新待调用动态库文件,大大简化常规待调用动态库接入应用系统的过程,提高转换动态库的生成效率。
[0006]第一方面,本申请提供了一种转换动态库的生成方法,所述方法包括:
[0007]获取待调用动态库的接口信息;其中,所述接口信息包括功能流程接口信息和公共字段信息;
[0008]根据所述功能流程接口信息,生成功能流程接口信息对应的功能流程接口描述;
[0009]将所述功能流程接口描述中的字段与所述公共字段信息进行匹配,得到全局描述结构;
[0010]根据所述功能流程接口描述和所述全局描述结构,生成所述转换动态库。
[0011]第二方面,本申请提供了一种转换动态库的生成装置,所述装置包括:
[0012]信息获取单元,用于获取待调用动态库的接口信息;其中,所述接口信息包括功能流程接口信息和公共字段信息;
[0013]描述生成单元,用于根据所述功能流程接口信息,生成功能流程接口信息对应的
功能流程接口描述;
[0014]结构获取单元,用于将所述功能流程接口描述中的字段与所述公共字段信息进行匹配,得到全局描述结构;
[0015]链接库生成单元,用于根据所述功能流程接口描述和所述全局描述结构,生成所述转换动态库。
[0016]第三方面,本申请提供了一种可读介质,包括执行指令,当电子设备的处理器执行所述执行指令时,所述电子设备执行如第一方面中任一所述的方法。
[0017]第四方面,本申请提供了一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行如第一方面中任一所述的方法。
[0018]由上述技术方案可以看出,本申请提供了一种转换动态库的生成方法,该方法包括:获取待调用动态库的接口信息;其中,所述接口信息包括功能流程接口信息和公共字段信息;根据所述功能流程接口信息,生成功能流程接口信息对应的功能流程接口描述;将所述功能流程接口描述中的字段与所述公共字段信息进行匹配,得到全局描述结构;根据所述功能流程接口描述和所述全局描述结构,生成所述转换动态库。可见,本申请中可以根据待调用动态库的接口信息,生成功能流程接口描述和全局描述结构,接着,可以利用功能流程接口描述和全局描述结构生成转换动态库,这样,便可以利用该转换动态库调用该待调用动态库。这样,便可以实现根据待调用动态库的接口信息自动,生成能够调用该待调用动态库的转换动态库,从而不需要和现有技术一样,需要人工手动编程开发,避免了人工手动编程过程中出现由于操作错误所导致的编程错误、开发代码质量下降、排查问题成本高的问题,从而提高了生成调用待调用动态库的转换动态库的便捷性以及健壮性,提高了生成调用待调用动态库的转换动态库的开发效率以及降低了对开发人员的技术要求。
[0019]上述的非惯用的优选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
[0020]为了更清楚地说明本申请实施例或现有的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0021]图1为本申请一实施例提供的一种转换动态库的生成方法的流程示意图;
[0022]图2为本申请一实施例提供的一种界面示意图;
[0023]图3为本申请一实施例提供的一种界面示意图;
[0024]图4A为本申请一实施例提供的一种界面示意图;
[0025]图4B为本申请一实施例提供的一种场景示意图;
[0026]图5为本申请一实施例提供的一种转换动态库的生成装置的结构示意图;
[0027]图6为本申请一实施例提供的一种电子设备的结构示意图。
具体实施方式
[0028]为使本申请的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本申请的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0029]目前,调用动态库的方式通常为将动态库与可执行程序放在一台计算机上,在编译可执行程序时链接,或在可执行程序运行时加载指定文件,从而实现可执行程序调用动态库中的一个或多个函数的功能。不管是采用链接的方式还是采用动态加载的方式,动态库都是作为可执行程序的一部分,被加载到可执行程序的某段地址空间中,并像调用本地函数一样地调用。
[0030]然而,现有的绝大多数动态库的调用,需要人工手动编程调用动态库的代码,并且,若需要调用的动态库发生变化后,还需要人工手动修改调用动态库的代码。然而,人工手动编程开发的过程中,会存在人工手动编程过程中容易出现由于操作错误所导致的编程错误的问题,导致需要人工花费大量时间反复查询错误原因以及纠正错误编程,进而导致在这过程中会耗费大量的人力、时间成本。
[0031]本申请提供了一种转换动态库的生成方法,该方法包括:获取待调用动态库的接口信息;其中,所述接口信息包括功能流程接口信息和公共字段信息;根据所述功能本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种转换动态库的生成方法,其特征在于,所述方法包括:获取待调用动态库的接口信息;其中,所述接口信息包括功能流程接口信息和公共字段信息;根据所述功能流程接口信息,生成功能流程接口信息对应的功能流程接口描述;将所述功能流程接口描述中的字段与所述公共字段信息进行匹配,得到全局描述结构;根据所述功能流程接口描述和所述全局描述结构,生成所述转换动态库。2.根据权利要求1所述的方法,其特征在于,所述功能流程接口信息包括:返回值类型、调用约定、函数名、接口调用函数类型、接口说明;其中,所述接口调用函数类型包括同步或异步;其中,所述待调用动态库的接口为C标准接口。3.根据权利要求2所述的方法,其特征在于,所述公共字段信息包括:被调用的待调用动态库的文件名、公共参数、结构体;其中,所述公共参数包括预先定义的关键变量和增加的全局变量。4.根据权利要求1

3任一所述的方法,其特征在于,根据所述功能流程接口信息,生成功能流程接口信息对应的功能流程接口描述,包括:针对每一个功能流程信息,根据预设描述格式生成该功能流程信息对应的功能流程接口描述。5.根据权利要求3所述的方法,其特征在于,所述将所述功能流程接口描述中的字段与所述公共字段信息进行匹配,得到全局描述结构,包括:针对所述功能流程接口描述中的每一个字段,若所述公共字段信息包括该字段对应的目标值,则将所述功能流程接口描述中的该字段的值调整为所述目标值,得到调整后的字段;若所述功能流程接口描述中的所有字段的值均调整完成,根据所有调整后的字段,得到调整后的所述功能流程接口描述;根据所述调整后的所述功能流程接口描述,得到所述全局扫描结构。6.根据权利要求1

3任一所述的方法,其特征在于,所述根据所述功能流程接口描述和所述全局描述...

【专利技术属性】
技术研发人员:金世良王磊王伟
申请(专利权)人:赞同科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1