本发明专利技术公开了一种安装包生成方法,包括:建立软件的安装包脚本,在所述安装包脚本中存储需要打包的软件的文件列表信息,并存储用来解析命令行的指令描述信息,所述命令行在执行所述软件的安装包时,携带安装参数;将所述安装包脚本中存储的所述指令描述信息转换为解析命令行指令;生成包括用来计算和发送所述软件的安装进度的指令;压缩所述安装包脚本中存储的所述文件列表信息中的所有文件,生成所述软件的安装包,在所述安装包中包含上述指令的集合。同时,本发明专利技术还提供了一种安装包生成装置,以及一种安装进度传递方法。本发明专利技术解决了获得软件安装进度时,软件通用性不强的问题。
【技术实现步骤摘要】
本专利技术涉及计算机应用领域,特别涉及一种安装包生成装置及方法、以 及安装进度传递方法。
技术介绍
随着计算机技术的发展和计算机的日益普及,计算机的功能也在不断增 加,在硬件平台与操作系统平台上能够提供给用户的应用服务越来越多。实 现这些应用服务功能的前提是首先需要在计算机上安装大量的应用软件,然 而这些应用软件安装与维护的繁瑣过程,对普通用户提出了很大的考验。因 此如何在计算机软件的易用性和友好性方面做得更好,是计算机厂商如今面 对的重要课题之一。为了改进用户体验,通常利用某 一软件来集中控制其他软件的安装过 程,以便实现在安装过程中无需用户输入相关参数或进行相应处理的静默(silence)安装。这样就需要在该软件的用户界面上显示所控制的其他软件 的安装进度,以便用户能够监视上述其他软件的安装过程。目前,在软件间传递安装进度,即某一软件A要获得另一软件B的安 装进度,主要采用在软件A中计算软件B安装进度的方法。该方法包括以 下两个阶段阶段l、生成软件B的压缩包;在软件A的源代码中,编写在安装软件 B时计算其安装进度的算法。具体来说,阶段1包括在安装软件B前,按照预定的压缩方式,将 软件B的所有文件压缩生成软件B压缩包,例如TAR格式的压缩包;将安 装软件B压缩包的方法、以及计算其安装进度的算法通过源代码的形式编写在软件A的程序中,从而使得在安装软件B压缩包时,软件A能够计算软 件B的安装进度。阶段2、软件A安装软件B压缩包,并按照预定算法计算软件B的安 装进度。具体来说,参见图1,图1为现有技术中在软件间传递安装进度方法的 流程示意图。由图l可见,该方法包括以下步骤步骤IOI、软件A对软件B压缩包进行解压缩。 步骤102、软件A得到软件B的文件总数。步骤103、软件A控制软件B执行安装操作,即软件A从软件B的压 缩包中不断拷贝文件到待安装目录中。步骤104、软件A每拷贝完一个文件,触发一次计算事件,即软件A 根据软件B中已完成的文件拷贝数量和软件B的文件总数,计算软怖的安装进度=软件m成)2拷量。一欠件B的又件总凄t由上所述,在现有技术中,如果有多个类似A的软件需要获取软件B 的安装进度,那么就必须在每个这种类似A的软件中编写计算软件B安装 进度的算法。由于这个编写计算安装进度算法的过程是预先在软件A程序 上通过编译大段复杂的源代码的方式实现的,这样必须对每个希望获取其他 软件安装进度的软件进行这种复杂的算法编译操作,因此就会造成重复性开 发工作较多、软件的通用性不强。
技术实现思路
有鉴于此,本专利技术的实施例提供了一种安装包生成装置及方法、以及安 装进度传递方法,解决了获得软件安装进度时,软件通用性不强的问题。 根据本专利技术实施例的安装包生成装置包括安装包脚本存储模块,用于存储需要打包的软件的文件列表信息,并存储 用来解析命令行的指令描述信息,所述命令行在执行所述软件的安装包时,携带安装参数;编译器模块,用于将所述安装包脚本存储模块中存储的所述指令描述信息 转换为解析命令行指令,生成包括用来计算和发送所述软件的安装进度的指令, 压缩安装包脚本存储i^莫块中存储的所述文件列表信息中的所有文件,生成所述 软件的安装包,在所述安装包中包含上述指令的集合。根据本专利技术另一实施例的安装包生成方法包括建立软件的安装包脚本,在所述安装包脚本中存储需要打包的软件的文件 列表信息,并存储用来解析命令行的指令描述信息,所述命令行在执行所述软 件的安装包时,携带安装参数;将所述安装包脚本中存储的所述指令描述信息转换为解析命令行指令;生成包括用来计算和发送所述软件的安装进度的指令;压缩所述安装包脚本中存储的所述文件列表信息中的所有文件,生成所述 软件的安装包,在所述安装包中包含上述指令的集合。才艮据本专利技术又一 实施例的安装进度传递方法包括根据上述的安装包生成方法,生成软件的安装包;任意一个希望获得所述软件的安装进度的其他软件以携带有安装参数 的命令行执行所述安装包,获取所述软件的安装进度。由上述的技术方案可见,相比现有技术,本专利技术实施例提供的安装包生 成装置及方法、以及安装进度传递方法,不需要在希望获取其他软件安装进 度的软件程序上通过编译源代码实现安装进度的计算和获取算法,而只需在 该软件程序中实现简单的接收安装进度数据的操作,并在生成待安装软件的 安装包过程中,使该安装包在运行时能够解析安装时的命令行、获取命令行 中安装参数的内存地址空间、不断计算并向该参数的内存地址空间抛出自身 的安装进度数据。因此,本专利技术解决了获得软件安装进度时,软件通用性不 强的问题。附图说明图1为现有技术中在软件间传递安装进度方法的流程示意图; 图2为本专利技术实施例中安装包生成装置的结构示意图; 图3为本专利技术实施例中安装包生成方法的流程示意图; 图4为本专利技术实施例中安装进度传递方法的流程示意图; 图5为本专利技术实施例中执行安装包的流程示意图。具体实施例方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图及具体 实施例对本专利技术作进一步地详细描述。本专利技术实施例提供的, 在生成软件的安装包过程中,将该软件的安装进度的计算以及发送的指令集 合包含在安装包中。任意一个希望获得所述软件的安装进度的其他软件以携 带有安装参数的命令行执行所述安装包,获取所述软件的安装进度。参见图2,图2为本专利技术实施例中安装包生成装置的结构示意图。该安 装包生成装置用于在安装任意软件B前,生成该软件B的安装包,并使得 所生成的软件B的安装包在执行时,能够解析运行软件B安装包时的命令 行,计算并发送自身的安装进度。由图2可见,该装置包括安装包脚本存 储模块210和编译器模块220。其中,安装包脚本存储模块210用于存储需要打包的软件B的文件列 表信息,并存储用来解析命令行的指令描述信息,该命令行用于在执行软件 B的安装包时,携带安装参数。其中安装参数可以是接收安装进度窗口信 息参数。编译器模块220用于将安装包脚本存储模块210中存储的用来解析运行 软件B安装包时命令行的指令描述信息转换为解析命令行指令,生成包括用 来计算和发送软件B安装进度的指令,并根据安装包脚本存储模块210中存 储的需要打包的软件B文件列表信息,压缩该文件列表信息中的所有文件,生成软件B的安装包,并在该安装包中包含上述指令的集合,以实现安装进度发送功能。具体来说,安装包脚本存储模块210包括文件列表信息存储单元211 和解析命令行指令信息存储单元212。其中文件列表信息存储单元211用于存储需要打包的软件B的文件列 表信息。解析命令行指令信息存储单元212用于存储用来解析命令行的指令描 述信息,该命令行用于在执行软件B的安装包时,携带安装参数。其中,解 析命令行的指令描述信息用于描述解析命令行的指令,该指令用来解析运行 软件B安装包时的命令行,具体来说,该指令所完成的操作包括当任意一安装包时,该软件B安装包解析该命令行,获取该安装参数的内存地址空间。 编译器模块220包括解析命令行指令生成单元221、计算和发送安装进度指令生成单元222、以及安装包生成单元224。其中,解析命令行指令生成单元221用于将安装包脚本存储模块210中行的指令描述信息转换为解析命令行指令,并将该指令发送给安装包生成单 元2本文档来自技高网...
【技术保护点】
一种安装包生成装置,其特征在于,包括:安装包脚本存储模块,用于存储需要打包的软件的文件列表信息,并存储用来解析命令行的指令描述信息,所述命令行在执行所述软件的安装包时,携带安装参数;编译器模块,用于将所述安装包脚本存储模块中 存储的所述指令描述信息转换为解析命令行指令,生成包括用来计算和发送所述软件的安装进度的指令,压缩安装包脚本存储模块中存储的所述文件列表信息中的所有文件,生成所述软件的安装包,在所述安装包中包含上述指令的集合。
【技术特征摘要】
1、一种安装包生成装置,其特征在于,包括安装包脚本存储模块,用于存储需要打包的软件的文件列表信息,并存储用来解析命令行的指令描述信息,所述命令行在执行所述软件的安装包时,携带安装参数;编译器模块,用于将所述安装包脚本存储模块中存储的所述指令描述信息转换为解析命令行指令,生成包括用来计算和发送所述软件的安装进度的指令,压缩安装包脚本存储模块中存储的所述文件列表信息中的所有文件,生成所述软件的安装包,在所述安装包中包含上述指令的集合。2、 如权利要求1所述的装置,其特征在于,所述安装包脚本存储模块包括 文件列表信息存储单元,用于存储需要打包的软件的文件列表信息; 解析命令行指令信息存储单元,用于存储用来解析命令行的指令描述信息,所述命令行在执行所述软件的安装包时,携带安装参数。3、 如权利要求l所述的装置,其特征在于,所述编译器模块包括 解析命令行指令生成单元,用于将安装包脚本存储模块中存储的所述指令描述信息转换为解析命令行指令,并将所述指令发送给安装包生成单元;计算和发送安装进度指令生成单元,用于生成包括用来计算和发送所述软 件的安装进度的指令,并将所述指令发送给安装包生成单元;安装包生成单元用于接收解析命令行指令生成单元生成的解析命令行指 令,接收计算和发送安装进度指令生成单元生成的包括用来计算和发送所述软 件的安装进度的指令,压缩安装包脚本存储模块中存储的所述文件列表信息中 的所有文件,生成所述软件的安装包,在所述安装包中包含上述指令的集合。4、 如权利要求l所述的装置,其特征在于,所述用来计算和发送所述软件 的安装进度的指令包括每当从安装包中拷贝一个文件到待安装目录中,根据已完成的文件拷贝 数量和所述安装包中存储的文件总数,计算软件的安装进度=软件中已完成的拷贝数量/软件的文件总数当所述安装参数不为空时,所述安装包向所述安装参数的内存地址空间抛 出所述安装进度。5、 如权利要求1至4任一项所述的装置,其特征在于, 所述安装包脚本存储^t块进一步包括其他操作指令信息存储单元,用于存储所述安装包在运行过程中需要进行的其他操作的指令描述信息;编译器模块进一步包括其他操作指令生成单元,用于将安装包脚本存储模块中其他操作指令信息存储单元存储的所述其他操作的指令描述信息转换为其他操作指令,将所述指令发送给安装包生成单元;安装包生成单元进一步用于接收其他操作指令生成单元生成的其他操作指令,并使所生成的所述...
【专利技术属性】
技术研发人员:杨采石,陈韶华,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。