首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于反编译特征进行拼装集成的程序设计系统及方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:成都九洲电子信息系统股份有限公司

摘要:本发明公开了一种基于反编译特征进行拼装集成的程序设计系统及方法,系统包括插件仓储模块和拼装集成模块;插件仓储模块为预开发的软件应程序集集合;拼装集成模块根据程序设计需求从插件仓储模块中调用对应软件应用程序集进行拼装集成,实现程序设计;拼装集成模块包括进程启动单元、服务检查单元、文件探测单元、方法寻址单元、软件热加载单元以及缓存队列单元。本发明具有开发周期短、业务逻辑清晰、后期运营维护成本低以及普适性高的优点。

主权项:1.一种基于反编译特征进行拼装集成的程序设计方法,其特征在于,实现程序设计方法的系统包括:插件仓储模块和拼装集成模块;所述插件仓储模块为预开发的软件应用程序集集合;所述拼装集成模块根据程序设计需求从插件仓储模块中调用对应软件应用程序集进行拼装集成,实现程序设计;所述拼装集成模块包括进程启动单元、服务检查单元、文件探测单元、方法寻址单元、软件热加载单元以及缓存队列单元;所述进程启动单元用于根据宿主运行库,开辟独立内存空间,创建程序设计进程;所述服务检查单元用于检查服务连接状态及运行情况;所述文件探测单元用于对插件仓储模块中程序集文件进行监控,对移入移出的程序集文件进行记录,并发送至缓存队列单元;所述方法寻址单元用于对发送至缓存队列单元的程序集文件进行反编译,并将反编译后获取到的程序集文件详细信息处理为特殊格式,并作为消息的形式推送至软件热加载单元;所述缓存队列单元用于存储程序集文件信息,并根据队列先入先出原则,依次将移入或移出的插件模块信息推送至软件热加载单元;所述软件热加载单元用于依次读取推送的插件模块信息,并利用反编译特性创建线程初始化模块,运行模块程序,并将执行结果推送至数据库;所述插件仓储模块中的每个程序集文件对应一个txt文件,并配置有对应的版本号;所述程序设计方法包括以下步骤:S1、在插件仓储模块中配置预开发的软件应用程序集合;S2、确定程序设计需求;S3、根据程序设计需求,从插件仓储模块中提取对应的程序集文件进行拼装集成,获得所需程序;所述步骤S3包括以下分步骤:S3-1、通过进程启动单元创建程序设计进程,并通过服务检查单元检查服务连接状态和运行情况;S3-2、通过文件探测单元对插件仓储单元中的程序集文件进行监控,对移入移出的程序集文件进行记录,并发送至缓存队列单元;S3-3、通过方法寻址单元对发送至缓存队列单元的程序集文件进行反编译,并按照队列先入先出原则将反编译后的程序集文件作为消息的形式推送至软件热加载单元;S3-4、基于程序集的反编译结果,通过软件热加载单元依次读取缓存队列单元推送的插件模块信息进行程序集文件的加载与卸载,并利用反编译特征创建线程初始化模块,运行模块程序获得所需程序,并将执行结果推送至数据库;所述步骤S3-1中,创建程序设计进程的方法具体为:在SKD开发环境中,借助IWebHostBulider和IWebHost对象,启动宿主的WebHost对象,然后通过调用CreateHostBuilder调用堆栈,同时构建一个HostBuilder,并将主机的加载操作执行,实现程序设计进程创建;所述步骤S3-1中,通过检查服务状态和运行情况的方法具体为:通过Task创建一个后台,读取Ip端口,利用Telnet向数据库及缓存服务发送指令,利用RabbitMqClient根据队列URL、交换机、定期推送和读取元素,通过异常捕获和消息状态,来检查服务的连接状态和运行情况;所述步骤S3-3中,对程序集进行反编译的方法具体为:通过Assembly.LoadFrom方法加载程序集文件,通过程序集对象的GetTypes获取程序集对象的集合,循环对Type对象的GetMethods获取每个Type对象的所有属性,通过Attribute标识获取每个Type对象的入口,实现程序集反编译;其中,程序集对象是指将程序集文件实例化后生成的一个可对它进行操作的文件。

全文数据:

权利要求:

百度查询: 成都九洲电子信息系统股份有限公司 一种基于反编译特征进行拼装集成的程序设计系统及方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。