产品升级的方法和设备的制作方法

文档序号:6515243阅读:147来源:国知局
产品升级的方法和设备的制作方法
【专利摘要】本发明提供一种产品升级的方法和设备。该方法包括:获取升级包,升级包包括:多种产品不同环境下的升级文件、升级包的环境检测块和升级文件的环境检测块;从升级包中确定待升级产品的升级文件、升级包的环境检测块和升级文件的环境检测块;根据待升级产品的升级包的环境检测块检测升级包与其系统安装环境,若匹配则根据待升级产品的升级文件的环境检测块检测升级文件与其系统安装环境,若匹配则采用该升级文件升级。本发明提供的产品升级的方法和设备,通过获取包括多种产品的升级文件的升级包,并根据升级包中待升级产品的升级文件、升级包的环境检测块和升级文件的环境检测块对待升级产品进行升级,可以满足不同产品不同环境下的升级需求。
【专利说明】产品升级的方法和设备
【技术领域】
[0001]本发明涉及信息【技术领域】,尤其涉及一种产品升级的方法和设备。
【背景技术】
[0002]由于软件产品设计的复杂性,开发人员在设计软件产品时,不可避免的会在产品中遗留一些比较严重的程序设计错误,如果在产品测试中未发现,就会将存在错误的产品投放到市场中,给用户带来不可预知的后果。产品升级不仅可以解决产品中的程序设计错误,而且可以为用户提供更多的服务。
[0003]现有技术中,不同的升级软件只能对特定类型的产品进行升级,例如:QQ升级软件仅能对QQ客户端进行升级,MSN升级软件仅能对MSN客户端进行升级。
[0004]如上所述,由于不同的升级软件只能对特定类型的产品进行升级,因此单一升级软件无法满足不同产品不同环境下的升级需求。

【发明内容】

[0005]本发明提供一种产品升级的方法和设备,用以解决现有技术中存在的单一升级软件无法满足不同产品不同环境下的升级需求的问题。
[0006]一方面,本发明提供了一种产品升级的方法,包括:
[0007]获取升级包,所述升级包包括:可扩展标记语言XML配置文件和多种产品的升级文件,所述XML配置文件包括:所述多种产品的升级包的环境检测块和所述多种产品的升级文件的环境检测块;
[0008]从所述升级包中确定待升级产品的升级文件,以及所述待升级产品的升级包的环境检测块和所述待升级产品的升级文件的环境检测块;
[0009]根据所述待升级产品的升级包的环境检测块对所述升级包的系统安装环境进行检测;
[0010]若所述升级包与所述升级包的系统安装环境匹配,则根据所述待升级产品的升级文件的环境检测块对所述待升级产品的升级文件的系统安装环境进行检测;
[0011]采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级。
[0012]另一方面,本发明还提供了一种产品升级的设备,包括:
[0013]获取模块,用于获取升级包,所述升级包包括:可扩展标记语言XML配置文件和多种产品的升级文件,所述XML配置文件包括:所述多种产品的升级包的环境检测块和所述多种产品的升级文件的环境检测块;
[0014]确定模块,用于从所述升级包中确定待升级产品的升级文件,以及所述待升级产品的升级包的环境检测块和所述待升级产品的升级文件的环境检测块;
[0015]检测模块,用于根据所述待升级产品的升级包的环境检测块对所述升级包的系统安装环境进行检测;若所述升级包与所述升级包的系统安装环境匹配,则根据所述待升级产品的升级文件的环境检测块对所述待升级产品的升级文件的系统安装环境进行检测;
[0016]升级模块,用于采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级。
[0017]本发明提供的产品升级的方法和设备,通过获取包括多种产品的升级文件的升级包,并根据升级包中与待升级产品对应的升级文件、升级包的环境检测块以及升级文件的环境检测块对待升级产品进行升级,可以满足不同产品不同环境下的升级需求。
【专利附图】

【附图说明】
[0018]图1为本发明提供的产品升级的方法一个实施例的流程示意图;
[0019]图2为本发明提供的产品升级的方法又一个实施例的流程示意图;
[0020]图3为本发明提供的产品升级的设备一个实施例的结构示意图。
【具体实施方式】
[0021]下面通过具体的实施例及附图,对本发明的技术方案做进一步的详细描述。
[0022]图1为本发明提供的产品升级的方法一个实施例的流程示意图。如图1所示,以下方法实施例中各步骤的执行主体具体可以为具有产品升级功能的各种设备,例如:手机、个人电脑,PAD等。该方法可以包括:
[0023]S101,获取升级包,升级包包括:可扩展标记语言XML配置文件和多种产品不同环境下的升级文件,XML配置文件包括:多种产品的升级包的环境检测块和多种产品的升级文件的环境检测块;
[0024]具体的,本实施例中的升级包为软件产品开发人员预先配置的,升级包中可以包括:可扩展标记语言XML配置文件和多种产品(例如QQ、MSN等)的升级文件。其中,XML配置文件具体可以包括:多种产品的升级包的环境检测块、多种产品的升级文件的环境检测块以及升级包信息。其中,升级包信息具体可以包括:公司名称、产品名称、升级包名称、升级包版本、日期、升级包大小、升级包描述等;升级包的环境检测块中包含有该升级包适用的系统安装环境,该系统安装环境可以包括:硬件环境,例如内存(品牌、容量等)、硬盘(品牌、容量、转速等)、中央处理器(主频、缓存等)等,以及软件环境,例如操作系统(Unix、WindowsXP、Windows7、Linux等)、数据库(Oracle、MySQL、Server等)等;升级包中的每个升级文件对应一个升级文件的环境检测块,升级文件的环境检测块中包含有该升级文件适用的系统安装环境,该系统安装环境可以包括:硬件环境,例如HP、ASUS、IBM型机器等,以及软件环境,例如操作系统(Unix、Windows XP、Windows7、Linux等)、补丁情况、软件版本号等。升级包可以适用单个操作系统,也可以适用两个或多个操作系统;对应的,升级包中的每个升级文件可以适用单个操作系统,也可以适用两个或多个操作系统。
[0025]S102,从升级包中确定待升级产品的升级文件,以及待升级产品的升级包的环境检测块和待升级产品的升级文件的环境检测块;
[0026]具体的,由于升级包中包括多种产品的升级文件,以及多种产品的升级包的环境检测块和多种产品的升级文件的环境检测块,因此在升级之前需要在升级包中查找到需要的升级文件、升级包的环境检测块和升级文件的环境检测块,以对待升级产品进行升级。
[0027]S103,根据待升级产品的升级包的环境检测块对升级包的系统安装环境进行检测;
[0028]具体的,检测升级包的系统安装环境,即待升级产品的系统环境,并根据待升级产品的升级包的环境检测块,将检测到的待升级产品的系统环境和待升级产品的升级包的环境检测块中的该升级包适用的系统安装环境进行比较。若待升级产品的系统环境和该升级包适用的系统安装环境匹配,则执行步骤S104 ;若待升级产品的系统环境和该升级包适用的系统安装环境不匹配,则不采用该升级包对待升级产品进行升级,即结束升级。
[0029]S104,若升级包与升级包的系统安装环境匹配,则根据待升级产品的升级文件的环境检测块对待升级产品的升级文件的系统安装环境进行检测;
[0030]具体的,升级包与升级包的系统安装环境匹配,即步骤S103中所述升级包适用的系统安装环境与待升级产品的系统环境匹配。若升级包与升级包的系统安装环境匹配,则可以采用该升级包对待升级产品进行升级。升级之前,若升级包中包括多个待升级产品的升级文件,则可以先对每个待升级产品的升级文件也进行系统安装环境检测。具体的,检测每个待升级产品的升级文件的系统安装环境,即待升级产品的系统环境,并根据与该待升级产品的升级文件对应的待升级产品的升级文件的环境检测块,将检测到的待升级产品的系统环境和该待升级产品的升级文件对应的升级文件的环境检测块中的该待升级产品的升级文件适用的系统安装环境进行比较。若该待升级产品的升级文件适用的系统安装环境和待升级产品的系统环境匹配,则执行步骤S105 ;若该待升级产品的升级文件适用的系统安装环境和待升级产品的系统环境不匹配,则继续对下一个待升级产品的升级文件的系统安装环境进行检测。
[0031]S105,采用与待升级产品的升级文件的系统安装环境匹配的待升级产品的升级文件对待升级产品进行升级。
[0032]具体的,待升级产品的升级文件与待升级产品的升级文件的系统安装环境匹配,即步骤S104中所述待升级产品的升级文件适用的系统安装环境与待升级产品的系统环境匹配。若待升级产品的升级文件与待升级产品的升级文件的系统安装环境匹配,则可以采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级。该待升级产品的升级文件完成升级操作后,返回步骤S104继续对下一个待升级产品的升级文件的系统安装环境进行检测。需要说明的是,当升级包中包含带有扩展功能的待升级产品的升级文件时,这类文件在待升级产品中没有对应的待升级文件,此时我们可以用一个空文件代替对应的待升级文件,以实现该待升级产品的升级文件的升级过程。
[0033]本实施例提供的产品升级的方法,通过获取包括多种产品的升级文件的升级包,并根据升级包中与待升级产品对应的升级文件、升级包的环境检测块以及升级文件的环境检测块对待升级产品进行升级,可以满足不同产品的升级需求。通过对升级包的系统安装环境进行检测,当升级包不适用当前系统安装环境时,不采用该升级包进行升级,实现了根据升级包的使用场景细粒度控制升级是否进行。通过对升级文件的系统安装环境进行检测,当升级文件不适用当前系统安装环境时,不采用该升级文件进行升级,实现了根据升级文件的使用场景细粒度控制是否采用该升级文件进行升级。
[0034]图2为本发明提供的产品升级的方法又一个实施例的流程示意图。如图2所示,以下方法实施例中各步骤的执行主体具体可以为具有产品升级功能的各种设备,例如:手机、个人电脑,PAD等。该方法可以包括:[0035]S201,获取升级包,升级包包括:可扩展标记语言XML配置文件和多种产品的升级文件,XML配置文件包括:多种产品不同环境下的升级包的环境检测块和多种产品的升级文件的环境检测块;
[0036]具体的,本实施例中的升级包为软件产品开发人员预先配置的,升级包中可以包括:可扩展标记语言XML配置文件和多种产品(例如QQ、MSN等)的升级文件。其中,XML配置文件具体可以包括:多种产品的升级包的环境检测块、多种产品的升级文件的环境检测块、回滚信息以及升级包信息。其中,升级包信息具体可以包括:公司名称、产品名称、升级包名称、升级包版本、日期、升级包大小、升级包描述等;回滚信息,用于指示当升级不成功时,是否执行回滚操作;升级包的环境检测块中包含有该升级包适用的系统安装环境,该系统安装环境可以包括:硬件环境,例如内存(品牌、容量等)、硬盘(品牌、容量、转速等)、中央处理器(主频、缓存等)等,以及软件环境,例如操作系统(Unix、Windows XP、Windows7、Linux等)、数据库(Oracle、MySQL、Server等)等;升级包中的每个升级文件对应一个升级文件的环境检测块,升级文件的环境检测块中包含有该升级文件适用的系统安装环境,该系统安装环境可以包括:硬件环境,例如HP、ASUS、IBM型机器等,以及软件环境,例如操作系统(Unix、Windows XP、Windows7、Linux等)、补丁情况、软件版本号等。升级包可以适用单个操作系统,也可以适用两个或多个操作系统;对应的,升级包中的每个升级文件可以适用单个操作系统,也可以适用两个或多个操作系统。
[0037]S202,从升级包中确定待升级产品的升级文件,以及待升级产品的升级包的环境检测块和待升级产品的升级文件的环境检测块;
[0038]具体的,由于升级包中包括多种产品的升级文件,以及多种产品的升级包的环境检测块和多种产品的升级文件的环境检测块,因此在升级之前需要在升级包中查找到需要的升级文件、升级包的环境检测块和升级文件的环境检测块,以对待升级产品进行升级。
[0039]S203,根据待升级产品的升级包的环境检测块对升级包的系统安装环境进行检测;
[0040]具体的,检测升级包的系统安装环境,即待升级产品的系统环境,并根据待升级产品的升级包的环境检测块,将检测到的待升级产品的系统环境和待升级产品的升级包的环境检测块中的该升级包适用的系统安装环境进行比较。若待升级产品的系统环境和该升级包适用的系统安装环境匹配,则执行步骤S204 ;若待升级产品的系统环境和该升级包适用的系统安装环境不匹配,则不采用该升级包对待升级产品进行升级,即结束升级。
[0041]S204,若升级包与升级包的系统安装环境匹配,且升级包包括多个待升级产品的升级文件,则依次对每个待升级产品的升级文件执行以下操作:根据待升级产品的升级文件的环境检测块对该待升级产品的升级文件的系统安装环境进行检测;
[0042]具体的,升级包与升级包的系统安装环境匹配,即步骤S203中所述升级包适用的系统安装环境与待升级产品的系统环境匹配。升级包与升级包的系统安装环境匹配,则可以采用该升级包对待升级产品进行升级。若升级包中包括多个待升级产品的升级文件,则升级之前,可以先对每个待升级产品的升级文件也进行系统安装环境检测。具体的,检测每个待升级产品的升级文件的系统安装环境,即待升级产品的系统环境,并根据与该待升级产品的升级文件对应的待升级产品的升级文件的环境检测块,将检测到的待升级产品的系统环境和该待升级产品的升级文件对应的升级文件的环境检测块中的该待升级产品的升级文件适用的系统安装环境进行比较。若该待升级产品的升级文件适用的系统安装环境和待升级产品的系统环境匹配,则继续执行步骤S205、S206 ;若该待升级产品的升级文件适用的系统安装环境和待升级产品的系统环境不匹配,则继续对下一个待升级产品的升级文件的系统安装环境进行检测。
[0043]S205,若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则根据该待升级产品的升级文件,对待升级产品中的对应进程进行关闭处理;
[0044]具体的,待升级产品的升级文件与待升级产品的升级文件的系统安装环境匹配,即步骤S204中所述待升级产品的升级文件适用的系统安装环境与待升级产品的系统环境匹配。若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则可以采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级。升级之前,可以先检测一下待升级产品中与该待升级产品的升级文件相关的进程是否处于运行状态,如果处于运行状态,则关闭该进程。
[0045]S206,若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则根据该待升级产品的升级文件,对待升级产品中对应的待升级文件进行备份;
[0046]具体的,若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则可以采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级。升级之前,可以先对待升级产品中与该升级文件对应的待升级文件进行备份,以实现当该待升级产品的升级文件或后续的某个待升级产品的升级文件升级失败后,采用该备份的待升级文件恢复该待升级文件。
[0047]需要说明的是,上述两个步骤S205、S206的先后顺序并没有限制。执行完上述两个步骤S205、S206之后,继续执行步骤S207。
[0048]S207,若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级;
[0049]具体的,升级操作可以采用现有的各种升级方法,例如先卸载对应的待升级文件,再导入该待升级产品的升级文件,或者直接导入该待升级产品的升级文件并覆盖对应的待升级文件。
[0050]S208,判断升级操作是否成功;
[0051]具体的,步骤S207的升级过程中,由于各种原因,可能导致该待升级产品的升级文件升级不成功,因此对该待升级产品的升级文件进行升级操作后,需判断该升级操作是否成功。若判断该升级操作成功,则继续执行步骤S209 ;若判断该升级操作不成功,则执行步骤S212。
[0052]S209,若判断升级操作成功,则对该待升级产品的升级文件对应的进程进行开启处理;
[0053]具体的,在对该待升级产品的升级文件进行升级操作之前,若对待升级产品中与该待升级产品的升级文件相关的进程进行过关闭处理,则该待升级产品的升级操作成功后,还需对待升级产品中与该待升级产品的升级文件相关的进程进行开启处理。
[0054]S210,判断升级包中是否存在未进行过系统安装环境检测的待升级产品的升级文件;
[0055]具体的,判断该待升级产品的升级文件升级成功后,还需判断升级包中是否存在未进行过系统安装环境检测的待升级产品的升级文件。若判断存在未进行过系统安装环境检测的待升级产品的升级文件,则返回步骤S204继续对下一个待升级产品的升级文件的系统安装环境进行检测。若判断不存在未进行过系统安装环境检测的待升级产品的升级文件,则执行步骤S211。
[0056]S211,若升级包中的多个待升级产品的升级文件中与自身的系统安装环境匹配的待升级产品的升级文件全部成功完成升级操作,则删除已成功完成升级操作的待升级产品的升级文件对应的备份的待升级文件。
[0057]具体的,若升级包中与自身的系统安装环境匹配的待升级产品的升级文件全部成功完成升级操作,则删除与自身的系统安装环境匹配的全部待升级产品的升级文件对应的备份的待升级文件,由于待升级产品中的每个待升级文件都对应该升级包中的一个待升级产品的升级文件,因此也即删除待升级产品中全部待升级文件的备份文件。
[0058]S212,若判断升级操作不成功,则根据回滚信息确定是否对所述待升级产品进行回滚操作;
[0059]具体的,当判断该升级操作不成功时,若升级包中的回滚信息用于指示当升级不成功时,执行回滚操作,则对待升级产品进行回滚操作,即执行步骤S213 ;若升级包中的回滚信息用于指示当升级不成功时,不执行回滚操作,则不对待升级产品进行回滚操作,并结束升级过程。回滚操作,是指将升级失败的待升级产品恢复到升级之前的状态的操作。
[0060]S213,若确定对待升级产品进行回滚操作,则将已成功完成升级操作的待升级产品的升级文件回滚为对应的备份的待升级文件,并删除该待升级产品的升级文件对应的备份的待升级文件。
[0061]具体的,对待升级产品进行回滚操作,回滚操作与升级操作类似,只是操作的对象待升级文件和升级文件互换了,即将已成功完成升级操作的待升级产品的升级文件作为“待升级文件”,将已成功完成升级操作的待升级产品的升级文件对应的备份的待升级文件作为“升级文件”,按照升级操作一样的方式:将“待升级文件” “升级”为“升级文件”,将已成功完成升级操作的待升级产品的升级文件回滚为对应的备份的待升级文件,并结束升级过程。
[0062]本实施例提供的产品升级的方法,通过获取包括多种产品的升级文件的升级包,并根据升级包中与待升级产品对应的升级文件、升级包的环境检测块以及升级文件的环境检测块对待升级产品进行升级,可以满足不同产品的升级需求。通过对升级包的系统安装环境进行检测,当升级包不适用当前系统安装环境时,不采用该升级包进行升级,实现了根据升级包的使用场景细粒度控制升级是否进行。通过对升级文件的系统安装环境进行检测,当升级文件不适用当前系统安装环境时,不采用该升级文件进行升级,实现了根据升级文件的使用场景细粒度控制是否采用该升级文件进行升级。通过升级之前的预处理和升级之后的后处理,使得待升级产品升级后可以恢复到未升级之前的进程,保证了用户服务的连续性。当某个待升级产品的升级文件升级不成功时,通过回滚操作,使待升级产品恢复到未升级之前,保证了该产品的正常使用。
[0063]图3为本发明提供的产品升级的设备一个实施例的结构示意图。如图3所示,本实施例中的产品升级的设备为执行上述产品升级的方法的特定主体,具体可以包括:获取模块31,确定模块32,检测模块33和升级模块34,其中:[0064]获取模块31,用于获取升级包,升级包包括:可扩展标记语言XML配置文件和多种产品的升级文件,XML配置文件包括:多种产品不同环境下的升级包的环境检测块和多种产品的升级文件的环境检测块。
[0065]具体的,本实施例中的升级包为软件产品开发人员预先配置的,升级包中可以包括:可扩展标记语言XML配置文件和多种产品(例如QQ、MSN等)的升级文件。其中,XML配置文件具体可以包括:多种产品的升级包的环境检测块、多种产品的升级文件的环境检测块、回滚信息以及升级包信息。其中,升级包信息具体可以包括:公司名称、产品名称、升级包名称、升级包版本、日期、升级包大小、升级包描述等;回滚信息,用于指示当升级不成功时,是否执行回滚操作;升级包的环境检测块中包含有该升级包适用的系统安装环境,该系统安装环境可以包括:硬件环境,例如内存(品牌、容量等)、硬盘(品牌、容量、转速等)、中央处理器(主频、缓存等)等,以及软件环境,例如操作系统(Unix、Windows XP、Windows7、Linux等)、数据库(Oracle、MySQL、Server等)等;升级包中的每个升级文件对应一个升级文件的环境检测块,升级文件的环境检测块中包含有该升级文件适用的系统安装环境,该系统安装环境可以包括:硬件环境,例如HP、ASUS、IBM型机器等,以及软件环境,例如操作系统(Unix、Windows XP、Windows7、Linux等)、补丁情况、软件版本号等。升级包可以适用单个操作系统,也可以适用两个或多个操作系统;对应的,升级包中的每个升级文件可以适用单个操作系统,也可以适用两个或多个操作系统。
[0066]确定模块32,用于从升级包中确定待升级产品的升级文件,以及待升级产品的升级包的环境检测块和待升级产品的升级文件的环境检测块;
[0067]具体的,由于升级包中包括多种产品的升级文件,以及多种产品的升级包的环境检测块和多种产品的升级文件的环境检测块,因此在升级之前需要在升级包中查找到需要的升级文件、升级包的环境检测块和升级文件的环境检测块,以对待升级产品进行升级。
[0068]检测模块33,用于根据待升级产品的升级包的环境检测块对升级包的系统安装环境进行检测;若升级包与升级包的系统安装环境匹配,则根据待升级产品的升级文件的环境检测块对待升级产品的升级文件的系统安装环境进行检测。
[0069]具体的,检测模块32检测升级包的系统安装环境,即待升级产品的系统环境,并根据待升级产品的升级包的环境检测块,将检测到的待升级产品的系统环境和待升级产品的升级包的环境检测块中的该升级包适用的系统安装环境进行比较。
[0070]若待升级产品的系统环境和该升级包适用的系统安装环境不匹配,则不采用该升级包对待升级产品进行升级,即结束升级。
[0071]若待升级产品的系统环境和该升级包适用的系统安装环境匹配,则根据待升级产品的升级文件的环境检测块对待升级产品的升级文件的系统安装环境进行检测。具体的,检测待升级产品的升级文件的系统安装环境,即待升级产品的系统环境,并根据与该待升级产品的升级文件对应的待升级产品的升级文件的环境检测块,将检测到的待升级产品的系统环境和该待升级产品的升级文件对应的待升级产品的升级文件的环境检测块中的该待升级产品的升级文件适用的系统安装环境进行比较;若该待升级产品的升级文件适用的系统安装环境和待升级产品的系统环境不匹配,则继续对下一个待升级产品的升级文件的系统安装环境进行检测。
[0072]升级模块34,用于采用与待升级产品的升级文件的系统安装环境匹配的待升级产品的升级文件对待升级产品进行升级。
[0073]具体的,待升级产品的升级文件与待升级产品的升级文件的系统安装环境匹配,即上面所述待升级产品的升级文件适用的系统安装环境与待升级产品的系统环境匹配。若该待升级产品的升级文件适用的系统安装环境和待升级产品的系统环境匹配,则升级模块34可以采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级。该待升级产品的升级文件完成升级操作后,检测模块33继续对下一个待升级产品的升级文件的系统安装环境进行检测。需要说明的是,当升级包中包含带有扩展功能的待升级产品的升级文件时,这类文件在待升级产品中没有对应的待升级文件,此时我们可以用一个空文件代替对应的待升级文件,以实现该待升级产品的升级文件的升级过程。
[0074]若升级包包括多个待升级产品的升级文件,则:
[0075]检测模块33还可以用于:若升级包与升级包的系统安装环境匹配,则依次对每个待升级产品的升级文件执行以下操作:根据待升级产品的升级文件的环境检测块对该待升级产品的升级文件的系统安装环境进行检测;
[0076]升级模块34还可以用于:若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则在采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级之前,根据该待升级产品的升级文件,对待升级产品中的对应进程进行关闭处理;
[0077]具体的,升级模块34在采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级之前,可以先检测一下待升级产品中与该待升级产品的升级文件相关的进程是否处于运行状态,如果处于运行状态,则关闭该进程。
[0078]进一步的,升级模块34还可以用于:若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则在采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级之前,对待升级产品中对应的待升级文件进行备份。
[0079]具体的,升级模块34在采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级之前,可以先对待升级产品中与该待升级产品的升级文件对应的待升级文件进行备份,以实现当该待升级产品的升级文件或后续的某个待升级产品的升级文件升级失败后,采用该备份的待升级文件恢复该待升级文件。
[0080]进一步的,升级模块34还可以用于:若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则采用该待升级产品的升级文件对待升级产品中对应的待升级文件进行升级。
[0081]具体的,升级模块34可以采用现有的各种升级方法执行升级操作,例如先卸载对应的待升级文件,再导入该待升级产品的升级文件,或者直接导入该升级文件并覆盖对应的待升级文件。
[0082]进一步的,升级模块34还可以用于:判断升级操作是否成功;
[0083]具体的,升级模块34在对该升级文件进行升级的过程中,由于各种原因,可能导致该升级文件升级不成功,因此对该待升级产品的升级文件进行升级操作后,需判断该升级操作是否成功。
[0084]进一步的,升级模块34还可以用于:若判断升级操作成功,则对该待升级产品的升级文件对应的进程进行开启处理。[0085]具体的,升级模块34在对该待升级产品的升级文件进行升级操作之前,若对待升级产品中与该待升级产品的升级文件相关的进程进行过关闭处理,则该待升级产品的升级操作成功后,还需对待升级产品中与该待升级产品的升级文件相关的进程进行开启处理。
[0086]进一步的,升级模块34还可以用于:若判断升级操作成功,则判断升级包中是否存在未进行过系统安装环境检测的待升级产品的升级文件。
[0087]具体的,升级模块34判断该待升级产品的升级文件升级成功后,还需判断升级包中是否存在未进行过系统安装环境检测的待升级产品的升级文件。若判断存在未进行过系统安装环境检测的待升级产品的升级文件,则检测模块33继续对下一个待升级产品的升级文件的系统安装环境进行检测。
[0088]进一步的,升级模块34还可以用于:若判断不存在未进行过系统安装环境检测的待升级产品的升级文件,且升级包中的多个待升级产品的升级文件中与自身的系统安装环境匹配的待升级产品的升级文件全部成功完成升级操作,则删除已成功完成升级操作的待升级产品的升级文件对应的备份的待升级文件。
[0089]具体的,若升级包中与自身的系统安装环境匹配的待升级产品的升级文件全部成功完成升级操作,则删除与自身的系统安装环境匹配的全部待升级产品的升级文件对应的备份的待升级文件,由于待升级产品中的每个待升级文件都对应该升级包中的一个待升级产品的升级文件,因此也即删除待升级产品中全部待升级文件的备份文件。
[0090]进一步的,升级模块34还可以用于:若判断该升级操作不成功,则根据回滚信息确定是否对所述待升级产品进行回滚操作。
[0091]具体的,当判断该升级操作不成功时,若升级包中的回滚信息用于指示当升级不成功时,执行回滚操作,则对待升级产品进行回滚操作;若升级包中的回滚信息用于指示当升级不成功时,不执行回滚操作,则不对待升级产品进行回滚操作,并结束升级过程。回滚操作,是指将升级失败的待升级产品恢复到升级之前的状态的操作。
[0092]进一步的,升级模块34还可以用于:若确定对待升级产品进行回滚操作,则将已成功完成升级操作的待升级产品的升级文件回滚为对应的备份的待升级文件,并删除该待升级产品的升级文件对应的备份的待升级文件。
[0093]具体的,升级模块34对待升级产品进行回滚操作,回滚操作与升级操作类似,只是操作的对象待升级文件和升级文件互换了,即将已成功完成升级操作的待升级产品的升级文件作为“待升级文件”,将已成功完成升级操作的待升级产品的升级文件对应的备份的待升级文件作为“升级文件”,按照升级操作一样的方式:将“待升级文件” “升级”为“升级文件”,将已成功完成升级操作的待升级产品的升级文件回滚为对应的备份的待升级文件,并结束升级过程。
[0094]本实施例提供的产品升级的设备,通过获取包括多种产品的升级文件的升级包,并根据升级包中与待升级产品对应的升级文件、升级包的环境检测块以及升级文件的环境检测块对待升级产品进行升级,可以满足不同产品的升级需求。通过对升级包的系统安装环境进行检测,当升级包不适用当前系统安装环境时,不采用该升级包进行升级,实现了根据升级包的使用场景细粒度控制升级是否进行。通过对升级文件的系统安装环境进行检测,当升级文件不适用当前系统安装环境时,不采用该升级文件进行升级,实现了根据升级文件的使用场景细粒度控制是否采用该升级文件进行升级。通过升级之前的预处理和升级之后的后处理,使得待升级产品升级后可以恢复到未升级之前的进程,保证了用户服务的连续性。当某个待升级产品的升级文件升级不成功时,通过回滚操作,使待升级产品恢复到未升级之前,保证了该产品的正常使用。
[0095]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种产品升级的方法,其特征在于,包括:获取升级包,所述升级包包括:可扩展标记语言XML配置文件和多种产品不同环境下的升级文件,所述XML配置文件包括:所述多种产品的升级包的环境检测块和所述多种产品的升级文件的环境检测块;从所述升级包中确定待升级产品的升级文件,以及所述待升级产品的升级包的环境检测块和所述待升级产品的升级文件的环境检测块;根据所述待升级产品的升级包的环境检测块对所述升级包的系统安装环境进行检测;若所述升级包与所述升级包的系统安装环境匹配,则根据所述待升级产品的升级文件的环境检测块对所述待升级产品的升级文件的系统安装环境进行检测;采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级。
2.根据权利要求1所述的方法,其特征在于,所述采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级之前,所述方法还包括:根据与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件,对所述待升级产品中的对应进程进行关闭处理;所述采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级之后,所述方法还包括:·对与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对应的进程进行开启处理。
3.根据权利要求1或2所述的方法,其特征在于,若所述升级包包括多个所述待升级产品的升级文件,则所述根据所述待升级产品的升级文件的环境检测块对所述待升级产品的升级文件的系统安装环境进行检测,采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级,包括:依次对每个所述待升级产品的升级文件执行以下操作:根据所述待升级产品的升级文件的环境检测块对该待升级产品的升级文件的系统安装环境进行检测,若该待升级产品的升级文件与该待升级产品的升级文件的系统安装环境匹配,则采用该待升级产品的升级文件对所述待升级产品中对应的待升级文件进行升级。
4.根据权利要求3所述的方法,其特征在于,所述依次对每个所述待升级产品的升级文件执行以下操作中,还包括:在所述采用该待升级产品的升级文件对所述待升级产品中对应的待升级文件进行升级之前,对所述待升级产品中所述对应的待升级文件进行备份。
5.根据权利要求4所述的方法,其特征在于,所述XML配置文件还包括:回滚信息;所述依次对每个所述待升级产品的升级文件执行以下操作中,还包括:在所述采用该待升级产品的升级文件对所述待升级产品中对应的待升级文件进行升级之后,判断所述升级操作是否成功;若判断所述升级操作不成功,则根据所述回滚信息确定是否对所述待升级产品进行回滚操作;若确定对所述待升级产品进行回滚操作,则将已成功完成升级操作的待升级产品的升级文件回滚为对应的备份的待升级文件,并删除该待升级产品的升级文件对应的备份的待升级文件。
6.根据权利要求5所述的方法,其特征在于,若所述多个所述待升级产品的升级文件中与自身的系统安装环境匹配的待升级产品的升级文件全部成功完成升级操作,则删除已成功完成升级操作的待升级产品的升级文件对应的备份的待升级文件。
7.一种产品升级的设备,其特征在于,包括:获取模块,用于获取的升级包,所述升级包包括:可扩展标记语言XML配置文件和多种产品的升级文件,所述XML配置文件包括:所述多种产品不同环境下的升级包的环境检测块和所述多种产品的升级文件的环境检测块; 确定模块,用于从所述升级包中确定待升级产品的升级文件,以及所述待升级产品的升级包的环境检测块和所述待升级产品的升级文件的环境检测块;检测模块,用于根据所述待升级产品的升级包的环境检测块对所述升级包的系统安装环境进行检测;若所述升级包与所述升级包的系统安装环境匹配,则根据所述待升级产品的升级文件的环境检测块对所述待升级产品的升级文件的系统安装环境进行检测;升级模块,用于采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级。
8.根据权利要求7所述的设备,其特征在于,所述升级模块还用于:在采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级之前,根据与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件,对所述待升级产品中的对应进程进行关闭处理;在采用与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对所述待升级产品进行升级之后,对与所述待升级产品的升级文件的系统安装环境匹配的所述待升级产品的升级文件对应的进程进行开启处理。
9.根据权利要求7或8所述的设备,其特征在于,若所述升级包包括多个所述待升级产品的升级文件,则:所述检测模块还用于:依次对每个所述待升级产品的升级文件执行以下操作:根据所述待升级产品的升级文件的环境检测块对该待升级产品的升级文件的系统安装环境进行检测;所述升级模块还用于:依次对每个所述待升级产品的升级文件执行以下操作:若该待升级产品的升级文件与待升级产品的升级文件的系统安装环境匹配,则采用该待升级产品的升级文件对所述待升级产品中对应的待升级文件进行升级。
10.根据权利要求9所述的设备,其特征在于,所述升级模块还用于:依次对每个所述待升级产品的升级文件执行以下操作中,在所述采用该待升级产品的升级文件对所述待升级产品中对应的待升级文件进行升级之前,对所述待升级产品中所述对应的待升级文件进行备份。
11.根据权利要求10所述的设备,其特征在于,所述XML配置文件还包括:回滚信息;所述升级模块还用于:依次对每个所述待升级产品的升级文件执行以下操作中,在所述采用该待升级产品的升级文件对所述待升级产品中对应的待升级文件进行升级之后,判断所述升级操作是否成功;若判断所述升级操作不成功,则根据所述回滚信息确定是否对所述待升级产品进行回滚操作;若确定对所述待升级产品进行回滚操作,则将已成功完成升级操作的待升级产品的升级文件升级为对应的备份的待升级文件,并删除该待升级产品的升级文件对应的备份的待升级文件。
12.根据权利要求11所述的设备,其特征在于,所述升级模块还用于:若所述多个所述待升级产品的升级文件中与自身的系统安装环境匹配的待升级产品的升级文件全部成功完成升级操作,则删除已成功完成升级操作的待升级产品的升级文件对应的备份的待升级 文件。
【文档编号】G06F9/445GK103530154SQ201310476181
【公开日】2014年1月22日 申请日期:2013年10月12日 优先权日:2013年10月12日
【发明者】王东 申请人:北京神州绿盟信息安全科技股份有限公司, 北京神州绿盟科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1