软件版本搜集方法、管理系统及软件升级检测方法和系统的制作方法

文档序号:6597546阅读:209来源:国知局
专利名称:软件版本搜集方法、管理系统及软件升级检测方法和系统的制作方法
软件版本搜集方法、管理系统及软件升级检测方法和系统
技术领域
本发明涉及计算机技术,特别是涉及一种软件升级检测方法和系统。
背景技术
随着计算机技术的发展,个人电脑、个人数字助理(PDA)、智能手机、互联网电视等 电子设备上安装使用的软件越来越广泛,遍及即时通信、音视频播放、资源下载、网页浏览、 输入法、系统辅助等各个门类。随着互联网的普及,普通用户使用的软件已经从十年前通过 光盘分发为主的方式,转变成通过网络下载为主的方式,这大大方便了用户获取软件。同 时,软件的版本升级速度也从十年前的半年或者一年一次,变成了现如今的每月一次甚至 几天一次。软件版本的更新会增加新功能,并解决旧版本中的缺陷和漏洞,用户使用最新版 本可以体验最新功能,并避免软件的已知漏洞对电脑带来的安全威胁。因此,目前有管理软 件管理用户已安装的软件,可以让用户获取已安装软件的版本,并检测已安装软件是否有 升级版本。 传统的管理软件检测是否有升级的方法,是通过在管理软件的服务端上存储各种 软件的最新版本及相关的描述信息,管理软件的运营人员从各种软件的官方网站或软件下 载站获得软件的最新版本,当一款软件有升级时,运营人员就会将该款软件的最新版本及 相关描述信息填入管理软件服务端的软件升级配置系统中。这样,管理软件客户端就能检 测获知各种软件的最新版本。 这种软件升级检测方法有个两个大弊端, 一是需要很高的运营成本,管理软件服 务端上需要维护的软件有成千上万,需要很多运营人员手工地搜集软件的升级版本;二是 及时性差,因为运营人员获取软件升级版本是一个手动的过程。

发明内容
基于此,有必要提供一种快速获得软件升级版本的软件版本搜集方法。 —种软件版本搜集方法,包括以下步骤获取客户端的软件列表中软件的客户端
版本号;发送所述客户端版本号到服务端。 优选地,所述客户端版本号通过注册表中软件卸载节点中的DisplayVersion键
值、主程序对应的可执行资源或软件安装目录下的配置文件中获取。 优选地,还包括获取所述客户端的软件列表的步骤。 优选地,所述客户端的软件列表通过注册表的软件卸载列表、桌面快捷方式、 Windows开始菜单中的应用程序列表、Windows快速启动栏中的快捷方式获取。
此外,还有必要提供一种快速获得软件升级版本的软件版本管理系统。
—种软件版本管理系统,包括 版本号获取单元,获取客户端的软件列表中软件的客户端版本号; 客户端收发单元,与所述版本号获取单元相连发送所述客户端版本号到服务端。 优选地,所述版本号获取单元通过注册表中软件卸载节点中的DisplayVersion键值、主程序对应的可执行资源或软件安装目录下的配置文件中获取所述客户端版本号。
优选地,还包括与所述版本号获取单元相连的获取所述客户端的软件列表的软件 列表获取单元。 优选地,所述软件列表获取单元通过注册表的软件卸载列表、桌面快捷方式、 Windows开始菜单中的应用程序列表、Windows快速启动栏中的快捷方式获取所述客户端 的软件列表。 优选地,还包括判断单元和升级单元,所述客户端收发单元还用于接收服务端版 本号,所述判断单元与所述客户端收发单元相连判断所述服务端版本号是否新于客户端版 本号,所述升级单元与所述判断单元相连在所述判断单元判断为是时提示用户并根据用户 指令升级或自动升级。 另外,还有必要提供一种快速获得软件升级版本的软件升级检测方法。 —种软件升级检测方法,包括以下步骤接收客户端的软件列表中软件的客户端
版本号;判断所述客户端版本号是否新于与所述客户端版本号相应的服务端版本号;如果
所述客户端版本号新于所述服务端版本号,则更新所述服务端版本号。 优选地,所述判断所述客户端版本号是否新于与所述客户端版本号相应的服务端
版本号的步骤具体为统计各客户端的所述客户端版本号,将数量大于阈值且高于服务端 版本号的客户端版本号作为新于所述服务端版本号的客户端版本号。 优选地,还包括推送服务端版本号到客户端的步骤。 优选地,还包括判断所述服务端版本号是否新于接收的所述客户端版本号的步 骤,如果是则将新于所述客户端版本号的服务端版本号发送至所述客户端。
另外,还有必要提供一种快速获得软件升级版本的软件升级检测系统。
—种软件升级检测系统,包括 服务端收发单元,接收客户端的软件列表中软件的客户端版本号;
存储单元,存储服务端版本号; 处理单元,与所述服务端收发单元及存储单元相连,判断所述客户端版本号是否 新于与所述客户端版本号相应的服务端版本号,如果所述客户端版本号新于所述服务端版 本号,则更新所述存储单元中的所述服务端版本号。 优选地,所述处理单元统计各客户端的所述客户端版本号,将数量大于阈值且高
于服务端版本号的客户端版本号作为新于所述服务端版本号的客户端版本号。 优选地,所述处理单元还判断所述服务端版本号是否新于接收的所述客户端版本
号,如果是则将新于所述客户端版本号的服务端版本号通过所述服务端收发单元发送至所
述客户端。 上述软件版本搜集方法、管理系统及软件升级检测方法和系统通过客户端上报客 户端版本号或接收客户端上报的客户端版本号来判断是否有新版本,不需要人工搜集录 入,大大提高了获取软件升级版本的速度。 通过注册表中软件卸载节点中的DisplayVersion键值、主程序对应的exe资源或 软件安装目录下的配置文件中获取客户端版本号,简单快捷。 通过判断服务端版本号是否新于客户端版本号,在服务端版本号新于客户端版本 号时提示用户并根据用户指令升级或自动升级,使升级过程根据用户需要进行或者在后台自动升级,极大的方便了用户。 通过统计,只有在高于服务端版本号的客户端版本号数量大于阈值才认定为新版 本,避免错误的版本号或者不稳定的测试版本也成为新的版本,提高了用户使用软件的稳 定性。


图1为客户端的软件版本搜集方法流程图;
图2为软件升级检测方法的流程图;
图3为客户端的工作过程流程图; 图4为软件版本管理系统和软件升级检测系统模块图。
具体实施方式
为了解决手动搜集软件导致耗时费力的问题,利用软件发行商发行新的软件版本 后,总有一些用户会先行下载并升级,或者部分用户的软件设置为自动升级的模式,此时, 网络中即存在一些新版本的软件,通过搜集这些软件的版本号,即可发现某一款软件的新 版本,此时管理软件的服务端可将该新版本通知管理软件的客户端,由管理软件的客户端 提示用户升级,整个过程由计算机自动完成,无需人工干预,因此,大大提高了获取软件升 级版本的速度。 如图1所示,其为客户端的软件版本搜集方法流程图。包括如下步骤 步骤S110,获取客户端的软件列表。客户端的软件列表可以通过注册表的软件
卸载列表、桌面快捷方式、Windows开始菜单中的应用程序列表、Windows快速启动栏中的
快捷方式获取。例如,注册表路径为服EY LOCALMACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersiorAUninstall。当然,如果在管理软件的客户端中预设了哪些软件需要上报软
件版本号的情况下,该步骤也可以省略。软件列表中包含的软件可以是时通信软件、音视频
播放软件、资源下载软件、网页浏览软件、输入法软件等软件中的任意几种。获取客户端软
件列表时机可以是间隔预定时间进行,也可以是每次开机时进行,还可以是客户端管理软
件启动时进行。 步骤S120,获取客户端的软件列表中软件的客户端版本号。客户端版本号可以通 过注册表中软件卸载节点中的Display Version键值、主程序对应的exe资源(可执行资 源)或软件安装目录下的配置文件中获取。在Windows系统的注册表中,软件卸载节点中 的Display Version键值记录有该软件的版本号;主程序对应的exe资源的属性的版本标 签中,也记载有该软件的版本号;在该软件安装目录下的配置文件中通常也会记载有该软 件的版本号。 步骤S130,发送客户端版本号到服务端。在收集到客户端版本号后,各种软件的客 户端版本号与其软件名称或者代码一起通过网络发送到服务端。可以是客户端在收集到客 户端版本号后立即上传,也可以是在预设的时间进行上传,还可以是根据网络状况(例如 在网络空闲的时候)进行上传。 通过客户端上报客户端版本号,不需要人工搜集录入,大大提高了获取软件升级 版本的速度。进一步地,在接收到大量的客户端上报的客户端版本号后,通过大量的客户端
6版本号可以判断是否有新版本,因为软件发行商发行新的软件版本后,总有一些用户会先 行下载并升级,或者部分用户的软件设置为自动升级的模式,此时,网络中即存在一些新版 本的软件,通过搜集这些软件的版本号,即可发现某一款软件的新版本。如图2所示,其为 服务端的软件升级检测方法的流程图。 步骤S210,接收客户端的软件列表中软件的客户端版本号。通过网络接收客户端 版本号及与该客户端版本号对应的软件名称或者代码。 步骤S220,判断所述客户端版本号是否新于与所述客户端版本号相应的服务端版 本号。可以将收到的客户端版本号与其对应的服务端版本号一一单独进行对比,如果客户 端版本号高于服务端版本号,则判定为客户端版本号新于所述服务端版本号。在进一步改 进的实施方式中,可以通过统计各客户端的客户端版本号,将数量大于阈值且高于服务端 版本号的客户端版本号作为新于所述服务端版本号的客户端版本号。通过统计,只有在高
于服务端版本号的客户端版本号数量大于阈值才认定为新版本,避免错误的版本号或者不 稳定的测试版本也成为新的版本,提高了用户使用软件的稳定性。例如,某款软件的实际最 新版本号为5.0,共收到该款软件的客户端版本号数据100万份,其中有IO个客户端版本 号是6. 0 (产生的原因可能为软件发行商的非正式测试版),因为10份数据比例很小,所以 可以通过阈值法进行剔除,如将阈值设定为128,只有在客户端版本号是6. 0超过128的时 候,才会将6.0认为是新版本。上述例子中以常见格式的版本号(阿拉伯数字加小数点的 格式)进行了说明,在其他的例子中,版本号也可以采用字母甚至符号的形式表示。
步骤S230,如果所述客户端版本号新于所述服务端版本号,则更新所述服务端版 本号。通过更新,将管理软件服务端的服务端版本号修改为新的版本号,使服务端的状态处 于较新的状态。 步骤S240,推送服务端版本号到客户端。将软件的服务端版本号与其软件名称 或者代码一起通过网络发送到客户端,由于服务端版本号通过上述步骤使其处于较新的状 态,推送到客户端,便于客户端升级和同步。在其他实施方式中,本步骤可以省略,在客户端 发出查询请求时,才响应该请求并回复服务端版本号。另外,在替代的实施方式中,本步骤 可以替换为判断服务端版本号是否新于步骤S210接收的客户端版本号,如果是则将新于 客户端版本号的服务端版本号发送至客户端,通过本实施方式,在软件的种类繁多并且客 户端量非常庞大的情况下,既可以避免大量数据的推送,又可以保证在客户端没有查询的 情况下主动告知客户端哪些软件版本有升级。 在服务端主动推送服务端版本号或者客户端发出查询请求、服务端响应该请求并 回复服务端版本号时,客户端的工作过程如图3所示
步骤S310,接收服务端版本号。 步骤S320,判断是否有新版本。客户端判断服务端版本号是否新于客户端版本号, 如果是,则进入步骤S330,否则流程结束。 步骤S330,提示用户或自动升级。例如,弹出提示框提示用户有新版本可以,是否
升级,在用户选择升级时根据用户指令升级。另外,也可以不提示用户自动升级。 通过判断服务端版本号是否新于客户端版本号,在服务端版本号新于客户端版本
号时提示用户并根据用户指令升级或自动升级,使升级过程根据用户需要进行或者在后台
自动升级,极大的方便了用户。
7
另外,如图4所示,还提供了一种客户端的软件版本管理系统和服务端的软件升 级检测系统。 软件版本管理系统包括软件列表获取单元、版本号获取单元、客户端收发单元、判 断单元和升级单元。 软件列表获取单元获取客户端的软件列表。软件列表获取单元通过注册表的软件 卸载列表、桌面快捷方式、Windows开始菜单中的应用程序列表、Windows快速启动栏中的 快捷方式获取所述客户端的软件列表。 版本号获取单元与软件列表获取单元相连获取客户端的软件列表中软件的客户
端版本号。版本号获取单元通过注册表中软件卸载节点中的Display Version键值、主程
序对应的exe资源或软件安装目录下的配置文件中获取所述客户端版本号。 客户端收发单元与所述版本号获取单元相连发送所述客户端版本号到服务端。 客户端收发单元还用于接收服务端版本号,判断单元与客户端收发单元相连判断
服务端版本号是否新于客户端版本号,升级单元与判断单元相连在判断单元判断为是时提
示用户并根据用户指令升级或自动升级。 软件升级检测系统包括服务端收发单元、存储单元和处理单元。
服务端收发单元用于接收客户端的软件列表中软件的客户端版本号。
存储单元用于存储服务端版本号。 处理单元与服务端收发单元及存储单元相连,判断客户端版本号是否新于与客户 端版本号相应的服务端版本号,如果客户端版本号新于服务端版本号,则更新存储单元中 的服务端版本号。在优选的实施方式中,处理单元统计各客户端的客户端版本号,将数量大 于阈值且高于服务端版本号的客户端版本号作为新于服务端版本号的客户端版本号。进一 步地,处理单元还判断服务端版本号是否新于接收的客户端版本号,如果是则将新于客户 端版本号的服务端版本号通过服务端收发单元发送至所述客户端。 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并 不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员 来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保 护范围。因此,本发明专利的保护范围应以所附权利要求为准。
8
权利要求
一种软件版本搜集方法,其特征在于,包括以下步骤获取客户端的软件列表中软件的客户端版本号;发送所述客户端版本号到服务端。
2. 根据权利要求1所述的软件版本搜集方法,其特征在于,所述客户端版本号通过注册表中软件卸载节点中的DisplayVersion键值、主程序对应的可执行资源或软件安装目录下的配置文件中获取。
3. 根据权利要求1或2所述的软件版本搜集方法,其特征在于,还包括获取所述客户端的软件列表的步骤。
4. 根据权利要求3所述的软件版本搜集方法,其特征在于,所述客户端的软件列表通过注册表的软件卸载列表、桌面快捷方式、Windows开始菜单中的应用程序列表、Windows快速启动栏中的快捷方式获取。
5. —种软件版本管理系统,其特征在于,包括版本号获取单元,获取客户端的软件列表中软件的客户端版本号;客户端收发单元,与所述版本号获取单元相连发送所述客户端版本号到服务端。
6. 根据权利要求5所述的软件版本管理系统,其特征在于,所述版本号获取单元通过注册表中软件卸载节点中的DisplayVersion键值、主程序对应的可执行资源或软件安装目录下的配置文件中获取所述客户端版本号。
7. 根据权利要求5或6所述的软件版本管理系统,其特征在于,还包括与所述版本号获取单元相连的获取所述客户端的软件列表的软件列表获取单元。
8. 根据权利要求7所述的软件版本管理系统,其特征在于,所述软件列表获取单元通过注册表的软件卸载列表、桌面快捷方式、Windows开始菜单中的应用程序列表、Windows快速启动栏中的快捷方式获取所述客户端的软件列表。
9. 根据权利要求5所述的软件版本管理系统,其特征在于,还包括判断单元和升级单元,所述客户端收发单元还用于接收服务端版本号,所述判断单元与所述客户端收发单元相连判断所述服务端版本号是否新于客户端版本号,所述升级单元与所述判断单元相连在所述判断单元判断为是时提示用户并根据用户指令升级或自动升级。
10. —种软件升级检测方法,其特征在于,包括以下步骤接收客户端的软件列表中软件的客户端版本号;判断所述客户端版本号是否新于与所述客户端版本号相应的服务端版本号;如果所述客户端版本号新于所述服务端版本号,则更新所述服务端版本号。
11. 根据权利要求io所述的软件升级检测方法,其特征在于,所述判断所述客户端版本号是否新于与所述客户端版本号相应的服务端版本号的步骤具体为统计各客户端的所述客户端版本号,将数量大于阈值且高于服务端版本号的客户端版本号作为新于所述服务端版本号的客户端版本号。
12. 根据权利要求10或11所述的软件升级检测方法,其特征在于,还包括推送服务端版本号到客户端的步骤。
13. 根据权利要求10或11所述的软件升级检测方法,其特征在于,还包括判断所述服务端版本号是否新于接收的所述客户端版本号的步骤,如果是则将新于所述客户端版本号的服务端版本号发送至所述客户端。
14. 一种软件升级检测系统,其特征在于,包括服务端收发单元,接收客户端的软件列表中软件的客户端版本号;存储单元,存储服务端版本号;处理单元,与所述服务端收发单元及存储单元相连,判断所述客户端版本号是否新于与所述客户端版本号相应的服务端版本号,如果所述客户端版本号新于所述服务端版本号,则更新所述存储单元中的所述服务端版本号。
15. 根据权利要求14所述的软件升级检测系统,其特征在于,所述处理单元统计各客户端的所述客户端版本号,将数量大于阈值且高于服务端版本号的客户端版本号作为新于所述服务端版本号的客户端版本号。
16. 根据权利要求14或15所述的软件升级检测系统,其特征在于,所述处理单元还判 断所述服务端版本号是否新于接收的所述客户端版本号,如果是则将新于所述客户端版本号的服务端版本号通过所述服务端收发单元发送至所述客户端。
全文摘要
一种软件升级检测方法,包括以下步骤接收客户端的软件列表中软件的客户端版本号;判断所述客户端版本号是否新于与所述客户端版本号相应的服务端版本号;如果所述客户端版本号新于所述服务端版本号,则更新所述服务端版本号。通过客户端上报客户端版本号或接收客户端上报的客户端版本号来判断是否有新版本,不需要人工搜集录入,大大提高了获取软件升级版本的速度。此外,还提供了一种软件版本搜集方法、管理系统及软件升级检测系统。
文档编号G06F9/44GK101794222SQ20101004281
公开日2010年8月4日 申请日期2010年1月13日 优先权日2010年1月13日
发明者李世平 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1