CN101060441A - 控制软件版本升级的方法、设备及系统 - Google Patents

控制软件版本升级的方法、设备及系统 Download PDF

Info

Publication number
CN101060441A
CN101060441A CNA2007101108850A CN200710110885A CN101060441A CN 101060441 A CN101060441 A CN 101060441A CN A2007101108850 A CNA2007101108850 A CN A2007101108850A CN 200710110885 A CN200710110885 A CN 200710110885A CN 101060441 A CN101060441 A CN 101060441A
Authority
CN
China
Prior art keywords
software
version number
version
license file
legacy
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2007101108850A
Other languages
English (en)
Other versions
CN100550780C (zh
Inventor
全一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2007101108850A priority Critical patent/CN100550780C/zh
Publication of CN101060441A publication Critical patent/CN101060441A/zh
Priority to PCT/CN2008/071206 priority patent/WO2008151551A1/zh
Application granted granted Critical
Publication of CN100550780C publication Critical patent/CN100550780C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种控制软件版本升级的方法、设备及系统,属于通信领域。所述方法包括:向许可证控制中心提交软件版本升级申请;接收许可证控制中心返回的包含软件升级的版本号信息的许可证文件;读取许可证文件,提取出版本号信息;根据版本号信息验证软件的版本号,如果验证通过,则允许安装新版本软件。所述设备包括收发模块、验证模块和控制模块。所述系统包括许可证控制设备和客户端,许可证控制设备包括接收模块、生成模块和发送模块,客户端包括收发模块、验证模块和控制模块。本发明通过根据许可证文件中的软件升级的版本号信息验证软件的版本号,验证成功时允许安装新版本软件,从而有效控制了不同版本之间的升级服务。

Description

控制软件版本升级的方法、设备及系统
技术领域
本发明涉及通信领域,特别涉及一种控制软件版本升级的方法、设备及系统。
背景技术
版本升级策略是产品销售策略中的重要一环,版本升级费用能体现路标每版本的价值,业界电信软件厂商都把升级收费作为增加产品研发投入和售后维护的重要资金来源。目前设备供应商越来越重视版本升级费用的制定,并且升级收费已经成为收费策略的一项国际标准,并逐步得到绝大多数运营商的认可。
在升级收费以前,设备供应商大都提供免费升级服务,没有对升级服务实施有效控制。随着升级收费的普及,对升级服务的控制也就日显重要。目前现有技术对升级服务的License(许可证)控制只有两种方式:功能License控制和容量License控制,其中功能License对版本升级中新增的功能部分进行控制,容量License对版本升级中涉及到的新增的容量进行控制。比如:Version 1.0具备功能A,可以管理100台路由器;升级后的Version 2.0具备功能A和功能B,并且Version 2.0的功能A比Version 1.0的功能A有所增强,但升级后的Version2.0的管理容量没有变化,即Version 2.0还是可以管理100台路由器;当Version 1.0向Version2.0升级时,Version 2.0比Version 1.0新增的功能B部分由功能license来控制,Version 1.0和Version2.0可以管理路由器的规模由容量License控制。
上述现有技术在新版本相对于旧版本中已有功能进行增强时,没有相应的License控制方式对功能增强的部分进行升级服务的License控制。比如:上例中Version 2.0比Version 1.0增强的功能A部分没有相应的License控制方式来对升级服务进行License控制。
另外,上述现有技术没有将升级费用与具体版本号相对应,即没有控制不同版本之间的升级费用,而不同版本之间的研发投入代价是不同的,因此会导致一旦用户交付了升级费用,代表用户可以在任意版本间进行升级,比如:某产品有V1、V2、V3、V4版本,用户现在使用的版本是V1,一旦用户交付了升级费用,则可以将版本升级至V2、V3、V4中的任意一个,导致我们无法控制用户升级的具体版本。因为V2、V3、V4版本各自的研发投入代价是不同的,现有的对升级服务的License控制技术无法控制不同版本之间的升级费用,会给设备厂商带来损失;而且,由于升级费用一般都要比单独购买一个新版本软件的价格低,所以用户在没有安装旧版本软件的情况下,只需支付一个升级费用,设备厂商就会发给用户一个新版本软件,这对设备厂商也是个较大的损失。
发明内容
为了有效控制不同版本之间的升级服务,本发明实施例提供了一种控制软件版本升级的方法、设备及系统。所述技术方案如下:
一种控制软件版本升级的方法,所述方法包括:
向许可证控制中心提交软件版本升级申请;
接收所述许可证控制中心返回的包含软件升级的版本号信息的许可证文件;
读取所述许可证文件,提取出所述版本号信息;
根据所述版本号信息验证软件的版本号,如果验证通过,则允许安装新版本软件。
本发明实施例还提供了一种控制软件版本升级的设备,所述设备包括:
收发模块,用于向许可证控制中心提交软件版本升级申请,并接收所述许可证控制中心返回的包含软件升级的版本号信息的许可证文件;
验证模块,用于读取所述收发模块接收的所述许可证文件,从所述许可证文件中提取出所述版本号信息,并根据所述版本号信息验证软件的版本号;
控制模块,用于当所述验证模块验证通过时,允许安装新版本软件。
本发明实施例还提供了一种控制软件版本升级的系统,所述系统包括:许可证控制设备和客户端;
所述许可证控制设备包括:
接收模块,用于接收所述客户端发送的软件版本升级申请;
生成模块,用于根据所述接收模块收到的软件版本升级申请,生成包含软件升级的版本号信息的许可证文件;
发送模块,用于将所述生成模块生成的许可证文件发送给所述客户端;
所述客户端包括:
收发模块,用于向所述许可证控制设备的接收模块提交软件版本升级申请,并接收所述许可证控制设备的发送模块返回的包含软件升级的版本号信息的许可证文件;
验证模块,用于读取所述收发模块接收的所述许可证文件,从所述许可证文件中提取出所述版本号信息,并根据所述版本号信息验证软件的版本号;
控制模块,用于当所述验证模块验证通过时,允许安装新版本软件。
本发明实施例提供的技术方案的有益效果是:
通过在不同场景中生成包含不同版本号信息的许可证文件,根据版本号信息验证软件的版本号,验证通过时允许安装新版本软件,从而有效控制了不同版本之间的升级服务。
附图说明
图1是本发明实施例1提供的控制软件版本升级的方法流程图;
图2是本发明实施例2提供的控制软件版本升级的方法流程图;
图3是本发明实施例4提供的控制软件版本升级的设备结构图;
图4是本发明实施例5提供的控制软件版本升级的系统结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例通过在安装新版本软件之前增加验证软件的版本号的过程,有效控制了不同版本之间的升级服务。
本发明实施例中License控制中心生成的License文件包含当前软件升级的版本号信息,该License文件可以是新生成的一个License文件,其中包含了当前软件升级的版本号信息;也可以利用原有的License文件,在其中新增软件升级的版本号信息。其中,原有的License文件包含功能License控制和容量License控制等内容,功能License对版本升级中新增的功能部分进行控制,容量License对版本升级中涉及到的新增的容量进行控制。
实施例1
参见图1,本发明实施例提供了一种控制软件版本升级的方法,具体包括以下步骤:
步骤101:License控制中心根据用户与设备厂商之间签订的合同中的用户需求,在数据库中保存软件升级的版本号信息。
用户需求在合同中通常以报价项序列的形式来体现,报价项序列中包含软件升级的报价项,即首次安装报价项或升级报价项,软件升级的报价项包含指定的软件升级的版本号信息。由于在一个合同中,首次安装还是升级安装是两个彼此互斥的商务场景,所以一个合同中只存在首次安装报价项或升级报价项,即两种报价项不能同时存在于一个合同当中。
首次安装报价项是当用户需求为首次安装新版本软件时产生的报价项,由于此时用户没有旧版本软件,则在首次安装报价项中指定的软件升级的版本号信息为新版本软件的版本号集合,该版本号集合中的版本号可以为一个或多个。
升级报价项是当用户需求为升级安装新版本软件时产生的报价项,由于此时用户拥有旧版本软件,则在升级报价项中指定的软件升级的版本号信息为旧版本号与新版本号的对应关系和旧版本软件的版本号集合。其中,旧版本软件的版本号集合中的版本号可以是一个或多个,在对应关系中指定的与旧版本号对应的新版本号也可以是一个或多个,而且在对应关系中,每个旧版本号只对应一个新版本号。例如,旧版本号包括V1、V2、V3,新版本号包括V4、V5,则旧版本号和新版本号之间的对应关系可以为旧版本号V1对应新版本号V4、旧版本号V2、V3对应新版本号V5。
在升级报价项中指定的软件升级的版本号信息还可以为旧版本软件的版本号集合和新版本软件的版本号集合。其中,旧版本软件的版本号集合中的版本号可以是一个或多个,新版本软件的版本号集合中的版本号也可以是一个或多个,从旧版本软件的版本号集合中的任一版本号可以升级到新版本软件的版本号集合中的任一版本号。例如,旧版本号包括V1、V2、V3,新版本号包括V4、V5,进行升级时可以将V1、V2、V3中的任一旧版本软件升级为V4、V5中的任一新版本软件。
步骤102:在进行软件升级时,向License控制中心提交软件版本升级申请。
步骤103:License控制中心接收到软件版本升级申请后,生成包含软件升级的版本号信息的License文件,并返回该License文件。
步骤104:接收License控制中心返回的包含软件升级的版本号信息的License文件。
当接收到一个新生成的License文件时,利用本地原有的License文件中的功能License控制和容量License控制等内容,与新License文件中的软件升级的版本号信息共同来实现对软件升级的控制,其中包括功能升级的控制、容量升级的控制和版本升级的控制等。
当接收到一个扩展后的License文件时,先用该License文件取代本地原有的License文件,然后利用该License文件中原有的功能License控制和容量License控制等内容,与新增的软件升级的版本号信息共同控制软件的升级,其中包括功能升级的控制、容量升级的控制和版本升级的控制等。
步骤105:读取接收到的License文件,并提取出License文件中的版本号信息。
步骤106:根据提取出的版本号信息验证与当前软件升级相关的版本号。
当软件升级的版本号信息具体为指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合时,上述验证过程具体如下:判断旧版本软件的版本号是否属于指定的版本号集合,如果属于,则在指定的对应关系中找到旧版本软件的版本号对应的新版本软件的版本号,并判断新版本软件的版本号是否与待安装的新版本软件的版本号一致,如果一致,则验证通过。
当软件升级的版本号信息具体为旧版本软件的版本号集合和新版本软件的版本号集合时,上述验证过程具体如下:判断是否旧版本软件的版本号属于旧版本软件的版本号集合且待安装的新版本软件的版本号属于新版本软件的版本号集合,如果是,则验证通过。
当软件升级的版本号信息具体为指定的新版本软件的版本号集合时,上述验证过程具体如下:判断待安装的新版本软件的版本号是否属于指定的新版本软件的版本号集合,如果属于,则验证通过。
步骤107:判断上述验证是否通过,如果验证通过,则执行步骤108;否则不允许安装新版本软件,结束本次软件的升级过程。
步骤108:允许安装新版本软件,然后结束。
本实施例中的技术方案具有如下有益效果:
通过根据不同的用户需求生成包含不同版本号信息的许可证文件,根据版本号信息验证软件的版本号,验证通过时允许安装新版本软件,从而有效控制了不同版本之间的升级服务。
实施例2
在本实施例中,提交软件版本升级申请、接收License文件和运行新版本软件的过程是由待升级设备来完成的。参见图2,本发明实施例还提供了一种控制软件版本升级的方法,具体包括以下步骤:
步骤201:License控制中心根据用户与设备厂商之间签订的合同中的用户需求,在数据库中保存软件升级的版本号信息。
本实施例以某软件产品有V1、V2、V3、V4四个版本,用户需求为将软件产品从V2版本升级到V3版本为例进行说明。
步骤202:用户进行软件版本升级时,待升级设备向License控制中心提交软件版本升级申请,该软件版本升级申请中包含用户需求的相关信息,如合同标识等。
步骤203:License控制中心收到软件版本升级申请后,根据申请中的用户需求的相关信息在数据库中查找相应的软件升级的版本号信息。
例如,根据申请中的合同标识在数据库中查找相应的软件升级的版本号信息。
步骤204:License控制中心判断用户需求是否为升级安装,如果是,则执行步骤205;否则,说明是首次安装,执行步骤210。
步骤205:License控制中心根据查找到的与升级安装对应的软件升级的版本号信息,生成包含升级安装控制项的License文件,并发送该License文件。
其中,生成License文件具体为新生成一个License文件或对已有的License文件进行扩展,升级安装控制项具体包括:本升级服务指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合。例如,升级安装控制项中包括旧版本号的集合为版本号V2、旧版本号与新版本号的对应关系,即软件由V2版本升级到V3版本。
步骤206:待升级设备收到License文件后,运行待升级的新版本软件,新版本软件获取用户使用的旧版本软件的版本号。
本实施例中新版本软件获取的是用户使用的V2版本的版本号,若用户没有旧版本软件,则无法进行新版本软件的安装。
步骤207:新版本软件获取License文件中指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合,并判断用户使用的旧软件版本号是否属于License文件中旧版本软件的版本号集合,如果是,则执行步骤208;否则,说明用户没有旧版本软件或用户使用的旧版本软件超越了本次升级中限定的旧版本号集合,则不允许安装新版本软件,结束本次软件的升级过程。
在本实施例中,若发现版本升级License文件中的旧版本软件的版本号为V2,则执行步骤208;若发现版本升级License文件中没有旧版本软件的版本号信息或者版本号不为V2,如为V1,则不能进行升级,结束本次软件的升级过程。
步骤208:新版本软件根据旧版本号与新版本号的对应关系找到旧版本软件的版本号对应的新版本软件的版本号。
步骤209:新版本软件判断自身的版本号是否与找到的新版本软件的版本号一致,如果一致,则执行步骤213;否则,不允许安装新版本软件,结束本次软件的升级过程。
在本实施例中,新版本软件将自身的版本号V3与在License文件的对应关系中找到的新版本软件的版本号相比较,若一致,如License文件中的新软件版本号也是V3,则说明可以安装此新软件,执行步骤213;若不一致,如License文件中的新软件版本号是V4,则结束。
步骤210:此时,用户需求为首次安装,则License控制中心根据查找到的与首次安装对应的软件升级的版本号信息,生成包含首次安装控制项的License文件,并发送该License文件。
其中,首次安装控制项具体包括:本安装服务指定的新版本软件的版本号集合。
步骤211:待升级设备收到License文件后,运行新版本软件,新版本软件获取License文件中指定的新版本软件的版本号集合。
步骤212:新版本软件判断自身的版本号是否属于License文件中指定的新版本软件的版本号集合,如果属于,则执行步骤213;否则,不允许安装新版本软件,结束本次软件的升级过程。
步骤213:允许安装新版本软件,然后结束。
本实施例中的技术方案具有如下有益效果:
通过根据不同的用户需求生成包含不同版本号信息的许可证文件,根据版本号信息验证软件的版本号,验证通过时允许安装新版本软件,从而有效控制了不同版本之间的升级服务。通过待升级设备自动提交申请并进行验证,能够提高升级的效率,节约人工成本。
实施例3
本实施例与实施例2的不同之处在于提交软件版本升级申请、接收License文件和运行新版本软件的过程是由设备厂商的用服安装工程师来完成的,即用服安装工程师给用户实施软件版本升级时,向License控制中心提交软件版本升级申请,并在收到License控制中心发来的包含版本号信息的License文件后,运行新版本软件,由新版本软件根据License文件中的版本号信息,验证与当前软件升级相关的版本号,如果验证通过,则允许安装新版本软件;否则,不允许安装新版本软件。
本实施例中软件版本升级时的具体步骤与实施例2类似,实施例2中提交软件版本升级申请(步骤202)、接收License文件(步骤206)和运行新版本软件(步骤211)的步骤都是由待升级设备来完成的,而本实施例中的相应步骤是由用服安装工程师来完成的,其余步骤与实施例2完全相同,在这里不再赘述。
本实施例中的技术方案具有如下有益效果:
通过根据不同的用户需求生成包含不同版本号信息的许可证文件,根据版本号信息验证软件的版本号,验证通过时允许安装新版本软件,从而有效控制了不同版本之间的升级服务。通过用服安装工程师完成提交软件版本升级申请、接收License文件和运行新版本软件的过程,可以根据具体情况,灵活方便地完成升级业务。
实施例2和实施例3中,License控制中心生成包含指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合的License文件以及进行相应验证的方式可以由以下方式来替换:
License控制中心生成包含指定的旧版本软件的版本号集合和新版本软件的版本号集合的License文件;相应的验证过程具体如下:License控制中心判断是否获取的旧版本软件的版本号属于上述旧版本软件的版本号集合且待安装的新版本软件的版本号属于上述新版本软件的版本号集合,如果是,则允许安装新版本软件。这种方式由于不存在对应关系,使得验证的步骤更加简单、升级更加灵活。
为了提高软件升级的效率和增强安全性,进一步地,在上述所有实施例中还可以增加在License控制中心进行比对校验的步骤:
当待升级设备向License控制中心提交软件版本升级申请时,在申请中还可以包括安装功能组件标识,当用户首次安装时,安装功能组件标识中包含指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合,当用户从旧版本升级到新版本时,安装功能组件标识中包含指定的新版本软件的版本号集合;
相应地,License控制中心收到申请后,将申请中的安装功能组件标识中的版本号信息与在数据库中查找到的软件升级的版本号信息进行比对,如果一致,则比对成功,License控制中心会继续执行生成相应的License文件的步骤;否则结束本次升级过程。
上述所有实施例中,License控制中心生成License文件时,为了简便操作,还可以在License文件中设置安装状态,当用户首次安装时,将安装状态设置为首次安装;当用户从旧版本升级到新版本时,将安装状态设置为升级;对应不同的安装状态,在License文件写入不同的版本号信息。其中,安装状态可以以标志位的方式来实现,例如,当用户需求为首次安装时,将License文件中的安装状态值设置为0,当用户需求为升级安装时,将License文件中的安装状态值设置为1。
实施例4
参见图3,本发明实施例还提供了一种控制软件版本升级的设备,包括:
(1)收发模块,用于向许可证控制中心提交软件版本升级申请,并接收许可证控制中心返回的包含软件升级的版本号信息的许可证文件;
(2)验证模块,用于读取收发模块接收的许可证文件,从许可证文件中提取出版本号信息,并根据版本号信息验证软件的版本号;
(3)控制模块,用于当验证模块验证通过时,允许安装新版本软件。
其中,当用户有旧版本软件,需要升级为新版本的软件时,验证模块可以具体包括:
1)升级信息读取单元,用于读取收发模块接收的包含指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合的许可证文件,并从许可证文件中提取出对应关系和版本号集合;
2)判断单元,用于获取旧版本软件的版本号,并根据升级信息读取单元提取的对应关系和版本号集合,判断旧版本软件的版本号是否属于版本号集合,如果属于,则在对应关系中找到旧版本软件的版本号对应的新版本软件的版本号,并判断新版本软件的版本号是否与待安装的新版本软件的版本号一致,如果一致,则验证通过。
当用户有旧版本软件,需要升级为新版本的软件时,验证模块还可以具体包括:
1)升级信息读取单元,用于读取收发模块接收的包含指定的旧版本软件的版本号集合和新版本软件的版本号集合的许可证文件,并从许可证文件中提取出旧版本软件的版本号集合和新版本软件的版本号集合;
2)判断单元,用于获取旧版本软件的版本号,并根据升级信息读取单元提取的旧版本软件的版本号集合和新版本软件的版本号集合,判断是否旧版本软件的版本号属于旧版本软件的版本号集合且待安装的新版本软件的版本号属于新版本软件的版本号集合,如果是,则验证通过。
另外,当用户首次安装软件时,验证模块还可以具体包括:
1)首次安装信息读取单元,用于读取收发模块接收的包含指定的新版本软件的版本号集合的许可证文件,并提取出版本号集合;
2)判断单元,用于根据首次安装信息读取单元提取的版本号集合,判断待安装的新版本软件的版本号是否属于版本号集合,如果属于,则验证通过。
本实施例中的技术方案具有如下有益效果:
通过验证模块根据版本号信息验证软件的版本号,验证通过时允许安装新版本软件,有效控制了不同版本之间的升级服务。
实施例5
参见图4,本发明实施例还提供了一种控制软件版本升级的系统,包括许可证控制设备和客户端;
许可证控制设备包括:
(1)接收模块,用于接收客户端发送的软件版本升级申请;
(2)生成模块,用于根据接收模块收到的软件版本升级申请,生成包含软件升级的版本号信息的许可证文件;
(3)发送模块,用于将生成模块生成的许可证文件发送给客户端;
客户端包括:
(1)收发模块,用于向许可证控制设备的接收模块提交软件版本升级申请,并接收许可证控制设备的发送模块返回的包含软件升级的版本号信息的许可证文件;
(2)验证模块,用于读取收发模块接收的许可证文件,从许可证文件中提取出版本号信息,并根据版本号信息验证软件的版本号;
(3)控制模块,用于当验证模块验证通过时,允许安装新版本软件。
其中,许可证控制设备的生成模块可以具体包括:
1)首次安装文件生成单元,用于当接收模块收到的软件版本升级申请为用户首次安装时,生成包含版本号信息为指定的新版本软件的版本号集合的许可证文件;
2)升级文件生成单元,用于当接收模块收到的软件版本升级申请为用户从旧版本升级到新版本时,生成包含版本号信息为指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合的许可证文件,或生成包含版本号信息为指定的旧版本软件的版本号集合和新版本软件的版本号集合的许可证文件。
另外,许可证控制设备还可以包括:
状态设置模块,用于在生成模块生成的许可证文件中设置安装状态,当接收模块收到的软件版本升级申请为用户首次安装时,将安装状态设置为首次安装;当接收模块收到的软件版本升级申请为用户从旧版本升级到新版本时,将安装状态设置为升级。
为了提高软件升级的效率和增强安全性,进一步地,当接收模块具体用于接收包含版本号信息的软件版本升级申请时,许可证控制设备还可以包括:
验证模块,用于当接收模块接收到包含版本号信息的软件版本升级申请后,比较软件版本升级申请中的版本号信息与许可证控制设备预存的版本号信息是否一致,如果一致,则允许生成模块生成包含版本号信息的许可证文件
本实施例中的技术方案具有如下有益效果:
通过客户端的验证模块根据版本号信息验证软件的版本号,验证通过时允许安装新版本软件,有效控制了不同版本之间的升级服务。许可证控制设备的生成模块在不同的应用场景中生成不同的License文件,应用更灵活。许可证控制设备的验证模块对软件版本升级申请中的版本号信息进行验证,可以进一步提高软件版本升级的安全性。
另外,本发明实施例还可以通过将升级费用与软件升级的版本号信息相对应,能够避免商务报价漏洞,例如:用户在不同版本之间升级时需要缴纳不同的费用,在用户没有旧版本软件的情况下,无法通过只缴纳升级费用来获取新版本软件。
以上实施例提供的技术方案可以通过软件来实现,相应的软件可以存储在可读取的存储介质上,如计算机的软盘,硬盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种控制软件版本升级的方法,其特征在于,所述方法包括:
向许可证控制中心提交软件版本升级申请;
接收所述许可证控制中心返回的包含软件升级的版本号信息的许可证文件;
读取所述许可证文件,提取出所述版本号信息;
根据所述版本号信息验证软件的版本号,如果验证通过,则允许安装新版本软件。
2.根据权利要求1所述的控制软件版本升级的方法,其特征在于,当用户从旧版本升级到新版本时,所述许可证文件中的版本号信息具体包括指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合;
相应地,所述根据所述版本号信息验证软件的版本号,如果验证通过,则允许安装新版本软件的步骤具体包括:
获取旧版本软件的版本号;
判断所述旧版本软件的版本号是否属于所述版本号集合,如果属于,则在所述对应关系中找到所述旧版本软件的版本号对应的新版本软件的版本号,并判断所述新版本软件的版本号是否与待安装的新版本软件的版本号一致,如果一致,则允许安装所述新版本软件。
3.根据权利要求1所述的控制软件版本升级的方法,其特征在于,当用户从旧版本升级到新版本时,所述许可证文件中的版本号信息具体包括指定的旧版本软件的版本号集合和新版本软件的版本号集合;
相应地,所述根据所述版本号信息验证软件的版本号,如果验证通过,则允许安装新版本软件的步骤具体包括:
获取旧版本软件的版本号;
判断是否所述旧版本软件的版本号属于所述旧版本软件的版本号集合且待安装的新版本软件的版本号属于所述新版本软件的版本号集合,如果是,则允许安装所述新版本软件。
4.根据权利要求1所述的控制软件版本升级的方法,其特征在于,当用户首次安装时,所述许可证文件中的版本号信息具体包括指定的新版本软件的版本号集合;
相应地,所述根据所述版本号信息验证软件的版本号,如果验证通过,则允许安装新版本软件的步骤具体包括:
判断待安装的新版本软件的版本号是否属于所述版本号信息中指定的新版本软件的版本号集合,如果属于,则允许安装所述新版本软件。
5.根据权利要求1所述的控制软件版本升级的方法,其特征在于,当所述软件版本升级申请中包含软件升级的版本号信息时,相应地,所述向许可证控制中心提交软件版本升级申请的步骤和所述接收所述许可证控制中心返回的包含软件升级的版本号信息的许可证文件的步骤之间还包括:
所述许可证控制中心比较所述软件版本升级申请中的版本号信息与本地预存的版本号信息是否一致,如果一致,则生成包含所述版本号信息的许可证文件,并返回所述许可证文件。
6.根据权利要求1所述的控制软件版本升级的方法,其特征在于,所述许可证文件还包括安装状态,当用户首次安装时,将所述安装状态设置为首次安装;当用户从旧版本升级到新版本时,将所述安装状态设置为升级。
7.一种控制软件版本升级的设备,其特征在于,所述设备包括:
收发模块,用于向许可证控制中心提交软件版本升级申请,并接收所述许可证控制中心返回的包含软件升级的版本号信息的许可证文件;
验证模块,用于读取所述收发模块接收的所述许可证文件,从所述许可证文件中提取出所述版本号信息,并根据所述版本号信息验证软件的版本号;
控制模块,用于当所述验证模块验证通过时,允许安装新版本软件。
8.根据权利要求7所述的控制软件版本升级的设备,其特征在于,所述验证模块具体包括:
升级信息读取单元,用于读取所述收发模块接收的包含指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合的许可证文件,并从所述许可证文件中提取出所述对应关系和所述版本号集合;
判断单元,用于获取旧版本软件的版本号,并根据所述升级信息读取单元提取的所述对应关系和所述版本号集合,判断所述旧版本软件的版本号是否属于所述版本号集合,如果属于,则在所述对应关系中找到所述旧版本软件的版本号对应的新版本软件的版本号,并判断所述新版本软件的版本号是否与待安装的新版本软件的版本号一致,如果一致,则验证通过。
9.根据权利要求7所述的控制软件版本升级的设备,其特征在于,所述验证模块具体包括:
升级信息读取单元,用于读取所述收发模块接收的包含指定的旧版本软件的版本号集合和新版本软件的版本号集合的许可证文件,并从所述许可证文件中提取出所述旧版本软件的版本号集合和新版本软件的版本号集合;
判断单元,用于获取旧版本软件的版本号,并根据所述升级信息读取单元提取的所述旧版本软件的版本号集合和新版本软件的版本号集合,判断是否所述旧版本软件的版本号属于所述旧版本软件的版本号集合且待安装的新版本软件的版本号属于所述新版本软件的版本号集合,如果是,则验证通过。
10.根据权利要求7所述的控制软件版本升级的设备,其特征在于,所述验证模块具体包括:
首次安装信息读取单元,用于读取所述收发模块接收的包含指定的新版本软件的版本号集合的许可证文件,并提取出所述版本号集合;
判断单元,用于根据所述首次安装信息读取单元提取的所述版本号集合,判断待安装的新版本软件的版本号是否属于所述版本号集合,如果属于,则验证通过。
11.一种控制软件版本升级的系统,其特征在于,所述系统包括:许可证控制设备和客户端;
所述许可证控制设备包括:
接收模块,用于接收所述客户端发送的软件版本升级申请;
生成模块,用于根据所述接收模块收到的软件版本升级申请,生成包含软件升级的版本号信息的许可证文件;
发送模块,用于将所述生成模块生成的许可证文件发送给所述客户端;
所述客户端包括:
收发模块,用于向所述许可证控制设备的接收模块提交软件版本升级申请,并接收所述许可证控制设备的发送模块返回的包含软件升级的版本号信息的许可证文件;
验证模块,用于读取所述收发模块接收的所述许可证文件,从所述许可证文件中提取出所述版本号信息,并根据所述版本号信息验证软件的版本号;
控制模块,用于当所述验证模块验证通过时,允许安装新版本软件。
12.根据权利要求11所述的控制软件版本升级的系统,其特征在于,所述许可证控制设备的生成模块具体包括:
首次安装文件生成单元,用于当所述接收模块收到的软件版本升级申请为用户首次安装时,生成包含版本号信息为指定的新版本软件的版本号集合的许可证文件;
升级文件生成单元,用于当所述接收模块收到的软件版本升级申请为用户从旧版本升级到新版本时,生成包含版本号信息为指定的旧版本号与新版本号的对应关系和旧版本软件的版本号集合的许可证文件,或生成包含版本号信息为指定的旧版本软件的版本号集合和新版本软件的版本号集合的许可证文件。
13.根据权利要求11所述的控制软件版本升级的系统,其特征在于,所述许可证控制设备还包括:
状态设置模块,用于在所述生成模块生成的许可证文件中设置安装状态,当所述接收模块收到的软件版本升级申请为用户首次安装时,将所述安装状态设置为首次安装;当所述接收模块收到的软件版本升级申请为用户从旧版本升级到新版本时,将所述安装状态设置为升级。
14.根据权利要求11所述的控制软件版本升级的系统,其特征在于,所述接收模块具体用于接收包含版本号信息的软件版本升级申请,相应地,所述许可证控制设备还包括:
验证模块,用于当所述接收模块接收到所述包含版本号信息的软件版本升级申请后,比较所述软件版本升级申请中的版本号信息与所述许可证控制设备预存的版本号信息是否一致,如果一致,则允许所述生成模块生成包含所述版本号信息的许可证文件。
CNB2007101108850A 2007-06-13 2007-06-13 控制软件版本升级的方法、设备及系统 Expired - Fee Related CN100550780C (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CNB2007101108850A CN100550780C (zh) 2007-06-13 2007-06-13 控制软件版本升级的方法、设备及系统
PCT/CN2008/071206 WO2008151551A1 (fr) 2007-06-13 2008-06-05 Procédé, dispositif et système de commande de mise à jour d'un logiciel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2007101108850A CN100550780C (zh) 2007-06-13 2007-06-13 控制软件版本升级的方法、设备及系统

Publications (2)

Publication Number Publication Date
CN101060441A true CN101060441A (zh) 2007-10-24
CN100550780C CN100550780C (zh) 2009-10-14

Family

ID=38866345

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007101108850A Expired - Fee Related CN100550780C (zh) 2007-06-13 2007-06-13 控制软件版本升级的方法、设备及系统

Country Status (2)

Country Link
CN (1) CN100550780C (zh)
WO (1) WO2008151551A1 (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008151551A1 (fr) * 2007-06-13 2008-12-18 Huawei Technologies Co., Ltd. Procédé, dispositif et système de commande de mise à jour d'un logiciel
CN102479305A (zh) * 2010-11-29 2012-05-30 金蝶软件(中国)有限公司 软件许可验证的方法及系统
CN103685471A (zh) * 2013-11-21 2014-03-26 珠海金山网络游戏科技有限公司 一种以独占方式对软件客户端进行更新的方法及系统
CN104205139A (zh) * 2012-03-02 2014-12-10 统一有限责任两合公司 用于在通信系统的升级过程中自动化许可效率属性的方法和许可系统
CN104657164A (zh) * 2013-11-21 2015-05-27 北大方正集团有限公司 软件升级处理方法和装置
CN105187262A (zh) * 2015-10-27 2015-12-23 上海斐讯数据通信技术有限公司 一种路由器升级方法及系统
CN106126286A (zh) * 2016-06-22 2016-11-16 天维尔信息科技股份有限公司 一种软件部署方法及终端
CN107479929A (zh) * 2017-08-15 2017-12-15 青岛海信移动通信技术股份有限公司 软件升级方法、装置及设备
CN109783135A (zh) * 2019-01-30 2019-05-21 深圳琥珀虚颜智能科技有限公司 多模块软件版本管理系统
CN110633218A (zh) * 2019-09-24 2019-12-31 北京首汽智行科技有限公司 一种app升级测试方法
CN111309352A (zh) * 2020-01-21 2020-06-19 深圳市雷赛智能控制股份有限公司 驱动器固件授权管理方法、系统及计算机可读存储介质
CN111459514A (zh) * 2019-01-18 2020-07-28 普天信息技术有限公司 一种终端升级的处理方法、服务器及基站
CN111736859A (zh) * 2019-03-25 2020-10-02 成都鼎桥通信技术有限公司 操作系统的版本更新方法、服务器以及终端

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10209983B2 (en) * 2017-04-19 2019-02-19 Servicenow, Inc. Distributed incremental updating of trays using a source control system
CN117076002B (zh) * 2023-09-28 2024-01-02 飞腾信息技术有限公司 一种安全启动方法及相关装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1331045C (zh) * 2002-08-19 2007-08-08 万达信息股份有限公司 一种Client/Server架构下软件自动升级更新的方法
JP2005141683A (ja) * 2003-11-10 2005-06-02 Sony Corp コンテンツ利用管理システム,コンテンツ再生装置,コンテンツ利用管理方法,コンテンツ再生方法およびコンピュータプログラム
CN100550780C (zh) * 2007-06-13 2009-10-14 华为技术有限公司 控制软件版本升级的方法、设备及系统

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008151551A1 (fr) * 2007-06-13 2008-12-18 Huawei Technologies Co., Ltd. Procédé, dispositif et système de commande de mise à jour d'un logiciel
CN102479305A (zh) * 2010-11-29 2012-05-30 金蝶软件(中国)有限公司 软件许可验证的方法及系统
US10860693B2 (en) 2012-03-02 2020-12-08 Unify Gmbh & Co. Kg Method and licensing system for automatically licensing service features during the upgrade of a communication system
CN104205139A (zh) * 2012-03-02 2014-12-10 统一有限责任两合公司 用于在通信系统的升级过程中自动化许可效率属性的方法和许可系统
US9721073B2 (en) 2012-03-02 2017-08-01 Unify Gmbh & Co. Kg Method and licensing system for automatically licensing service features during the upgrade of a communication system
US10210314B2 (en) 2012-03-02 2019-02-19 Unify Gmbh & Co. Kg Method and licensing system for automatically licensing service features during the upgrade of a communication system
CN103685471A (zh) * 2013-11-21 2014-03-26 珠海金山网络游戏科技有限公司 一种以独占方式对软件客户端进行更新的方法及系统
CN104657164A (zh) * 2013-11-21 2015-05-27 北大方正集团有限公司 软件升级处理方法和装置
CN103685471B (zh) * 2013-11-21 2017-05-03 珠海金山网络游戏科技有限公司 一种以独占方式对软件客户端进行更新的方法及系统
CN104657164B (zh) * 2013-11-21 2017-11-14 北大方正集团有限公司 软件升级处理方法和装置
CN105187262A (zh) * 2015-10-27 2015-12-23 上海斐讯数据通信技术有限公司 一种路由器升级方法及系统
CN106126286A (zh) * 2016-06-22 2016-11-16 天维尔信息科技股份有限公司 一种软件部署方法及终端
CN107479929A (zh) * 2017-08-15 2017-12-15 青岛海信移动通信技术股份有限公司 软件升级方法、装置及设备
CN111459514A (zh) * 2019-01-18 2020-07-28 普天信息技术有限公司 一种终端升级的处理方法、服务器及基站
CN109783135A (zh) * 2019-01-30 2019-05-21 深圳琥珀虚颜智能科技有限公司 多模块软件版本管理系统
CN111736859A (zh) * 2019-03-25 2020-10-02 成都鼎桥通信技术有限公司 操作系统的版本更新方法、服务器以及终端
CN110633218A (zh) * 2019-09-24 2019-12-31 北京首汽智行科技有限公司 一种app升级测试方法
CN110633218B (zh) * 2019-09-24 2023-04-11 北京首汽智行科技有限公司 一种app升级测试方法
CN111309352A (zh) * 2020-01-21 2020-06-19 深圳市雷赛智能控制股份有限公司 驱动器固件授权管理方法、系统及计算机可读存储介质
CN111309352B (zh) * 2020-01-21 2024-03-26 深圳市雷赛智能控制股份有限公司 驱动器固件授权管理方法、系统及计算机可读存储介质

Also Published As

Publication number Publication date
CN100550780C (zh) 2009-10-14
WO2008151551A1 (fr) 2008-12-18

Similar Documents

Publication Publication Date Title
CN101060441A (zh) 控制软件版本升级的方法、设备及系统
CN1251095C (zh) 遥控程序下装系统
CN1302381C (zh) 创建并展开较小微软视窗应用程序的方法和设备
CN1573701A (zh) 分布式构建环境中的软件映像创建
CN1700641A (zh) 数字签名保证系统、方法和装置
CN1866214A (zh) 安装方法及设备
CN1858742A (zh) 一种在实时数据库中实现更新数据的方法和系统
CN1668010A (zh) 用来在更新分发系统中分发更新元数据的基于标记模式
CN1489043A (zh) 软件许可管理系统和方法以及记录介质
CN1534461A (zh) 用于动态增加软件部件以便扩展系统过程功能的系统结构和相关方法
CN1530790A (zh) 将软件包绑定到对允许硬件改变的计算机系统的简明硬件标识
CN104573525A (zh) 一种基于白名单的专用信息服务软件漏洞修复系统
CN101079003A (zh) 对计算机bios固件进行安全风险检测的系统和方法
CN1208719C (zh) 应用软件自动安装与自动修复的方法
CN101076168A (zh) 智能终端系统的管理方法和智能终端
CN1536520A (zh) 使用指纹信息的信用交易系统及方法
CN1839413A (zh) 创建卷映像
CN1573706A (zh) 备份系统及方法、恢复系统及方法、移植系统及方法
CN1859632A (zh) 移动终端业务的封装提供方法
CN1535439A (zh) 通信系统、卡、管理服务器、通信方法、程序和其上记录程序的记录介质
CN1874405A (zh) 图像处理系统和图像处理装置
CN1737779A (zh) 一种扩展外设的方法及系统
CN1491389A (zh) 信息分配系统和装置,用于存储和输出信息内容的方法、装置、以及计算机程序产品,以及内容数据
CN1542583A (zh) 用于将机密捆绑到具有硬件变化容限的计算机系统的系统
CN1484468A (zh) 通信终端、服务器、电子价值收费方法及电子价值收费程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091014

Termination date: 20160613

CF01 Termination of patent right due to non-payment of annual fee