一种在已发布程序中增加参数的方法和装置制造方法及图纸

技术编号:31224231 阅读:27 留言:0更新日期:2021-12-08 09:24
本发明专利技术涉及计算机技术领域,具体涉及一种在已发布程序中增加参数的方法和装置,该方法包括:从关联的服务程序中获取目标参数信息;获取目标参数所属的目标函数在内存中的第一地址;根据第一地址从内存中读取待修改参数的汇编代码,并将汇编代码拷贝至代码内存空间;将待修改参数拷贝至数据内存空间,在数据内存空间内的待修改参数中增加目标参数;将内存中的汇编代码修改为跳转至代码内存空间的jump指令。通过服务程序接收服务器在任意时刻发送的数据,能够及时将目标参数信息发送给已经发布的客户端,根据目标参数信息可快速在客户端程序的特定位置增加目标参数,不需要发布客户端版本,极大节省了整个参数增加功能的发布流程。程。程。

【技术实现步骤摘要】
一种在已发布程序中增加参数的方法和装置


[0001]本专利技术涉及计算机
,具体涉及一种在已发布程序中增加参数的方法和装置。

技术介绍

[0002]目前在windows系统中开发软件程序,有时会碰到一些特别紧急的需求,需要对已经发布的程序增加一个参数,该参数可以是某个数据,或者是某个字段。例如我们直播平台,我们想对点播程序进行分类,点播程序有两种,一种是点播,另一种是新开发的新功能:发现页面的短视频功能,由于两种都属于点播程序,服务器无法进行区分。因此需要在客户端增加一个字段告知服务器是点播还是发现页面的短视频功能。
[0003]对于增加一个参数,传统方案是重新开放程序,增加参数后重新发布新的程序,并且整个程序需要进行功能开发、功能测试、集成测试、功能验收以及版本签名打包发布等等一系列的流程,服务器也需要申请大量带宽进行版本更新。因此,现有技术中存在程序在小改动时修改过程比较繁琐的技术问题。

技术实现思路

[0004]本专利技术的目的是提供一种在已发布程序中增加参数的方法和装置,以解决现有技术中程序在小改动时修改过本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种在已发布程序中增加参数的方法,应用于客户端,其特征在于,所述方法包括:从关联的服务程序中获取目标参数信息;从所述目标参数信息中提取目标参数和所述目标参数的数据类型,并根据所述目标参数信息获取所述目标参数所属的目标函数在内存中的第一地址;根据所述数据类型获得所述目标参数的数据大小,并根据所述数据大小为所述目标参数分配相应大小的数据内存空间;分配一段与所述数据内存空间对应的代码内存空间,并将所述代码内存空间的属性设置为PAGE_EXECUTE_READWRITE;根据所述第一地址从所述内存中读取待修改参数的汇编代码,并将所述汇编代码拷贝至所述代码内存空间;将所述待修改参数拷贝至所述数据内存空间,在所述数据内存空间内的待修改参数中增加所述目标参数;将所述内存中的汇编代码修改为跳转至所述代码内存空间的jump指令。2.根据权利要求1所述的方法,其特征在于,所述将所述待修改参数拷贝至所述数据内存空间,在所述数据内存空间内的待修改参数中增加所述目标参数,包括:从所述目标参数信息中提取所述待修改参数在所述目标函数中的第二地址和所述目标参数在所述待修改参数中的第三地址;根据所述第二地址获取待修改参数,并将所述待修改参数拷贝至所述数据内存空间;在所述数据内存空间内的待修改参数中定位所述第三地址,并在所述第三地址处增加所述目标函数。3.根据权利要求1所述的方法,其特征在于,所述根据所述目标参数信息获取所述目标参数所属的目标函数在内存中的第一地址,包括:从所述目标参数信息中提取目标模块的模块名称、目标函数的相对偏移地址和代码长度,所述目标模块包括所述目标函数;根据所述模块名称获得所述目标模块在所述内存中的起始地址;根据所述起始地址、所述相对偏移地址和所述代码长度获得所述目标函数在所述内存中的第一地址。4.根据权利要求1所述的方法,其特征在于,所述从关联的服务程序中获取目标参数信息,包括:在启动时向关联的服务程序询问是否发送过参数修改请求,若所述服务程序返回确认消息,则获取目标参数信息;或者,在运行过程中接收所述服务程序发送的参数修改请求,从所述参数修改请求中提取目标参数信息。5.根据权利要求4所述的方法,其特征在于,所述从所述参数修改请求中提取目标参数信息之前,包括:通过系统API函数CreateToolhelp32Snapshot遍历所有工作线程,并调用系统API函数SuspendThread暂停所述工作线程;相应的,所述将所述内存中的...

【专利技术属性】
技术研发人员:周志刚
申请(专利权)人:武汉斗鱼鱼乐网络科技有限公司
类型:发明
国别省市:

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

1