一种软件智能安装/升级的方法及系统的制作方法

文档序号:6336416阅读:193来源:国知局
专利名称:一种软件智能安装/升级的方法及系统的制作方法
技术领域
本发明涉及软件技术领域,尤其涉及一种软件的智能安装/升级方法及系统。
背景技术
随着计算机与互联网技术的发展,各种应用软件也层出不穷。早期的软件安装 的目的非常单纯,仅仅是安装与本软件有关的功能模块,但随着竞争的发展,现在有一 些软件在安装过程中,会捆绑一些无关的甚至是有害的内容,使用户在安装过程中无意 间进行了安装。上述这种情况,目前已呈愈演愈烈之势,不仅很多软件其自身发布的官方版本 中就带有大量捆绑内容,而且还有一些专门提供软件下载的人会将捆绑内容整合到别人 的正常软件的安装过程中去,这对用户造成了很大的困扰。对于经验不足的用户,往往在安装过程中无意间就会安装很多不需要的捆绑内 容,这些捆绑内容很可能还是有害的;而对于有一定经验的用户来说,在安装过程中要 特别小心,当注意到其中的一些无关的捆绑内容时,可以选择将其去除,这不仅延误了 安装进程,浪费了大量精力,而且,对于一些隐蔽的或强制捆绑的内容也是无能为力。另一方面,软件的升级与安装是有类似之处的,升级之后也存在一个安装过 程。但不同的是,当一个软件发布新版本后,一般会公布在自己的官方网页上,或合作 网站的网页上,或通过广告方式告知广大计算机用户,用户得知后,可根据情况选择是 否去下载新的版本,去哪里下载新的版本。这种方式,对于应用软件来说,是属于被动 的升级方式,对于用户来说,也很难及时得知新版本的出现。还有一些软件,虽然其自身带有更新通知功能,但也仅对其自身软件有效,对 其他软件并不能起到任何提示效果,用户仍然无法及时得知本机所安装的常用软件是否 处于最新的状态,而当有多款软件实际上已经发布了更新版本时,更无法一次性的完成 全部新版本的升级。因此,如何提供一种软件的智能安装/升级方法及系统,使用户放心的对各款 软件进行安装,无需过多关注安装过程,甚至是完全免打扰式的安装或升级,已经成为 业界亟待解决的问题。

发明内容
本发明所要解决的技术问题在于提供一种软件的智能安装/升级方法及系统, 以使用户不再担心捆绑在待安装软件中的无关或有害内容,实现便捷安装,同时还可以 使用户及时得知与本机所安装的软件有关的新版本,并可一次性完成多款软件的升级。为解决上述技术问题,本发明提供一种软件智能安装/升级的方法,包括如下 步骤在客户端检测本机已安装的软件,生成待安装/升级软件列表,并为每款待安 装/升级软件提供对应的安装/升级提示;
4
当客户端侦测到用户根据所述安装/升级提示选择了某款软件的安装/升级操作 后,根据所述待安装/升级软件的名称和版本号,从服务器下载对应的目标软件安装/升 级包;在客户端执行所述目标软件安装/升级包中的安装/升级文件,完成该软件的安
装/升级。本发明还提供一种软件智能安装/升级的系统,包括检测模块,用于在客户端检测本机已安装的软件,生成待安装/升级软件列 表,并为每款待安装/升级软件提供对应的安装/升级提示;下载模块,用于当客户端侦测到用户根据所述安装/升级提示选择了某款软件 的安装/升级操作后,根据所述待安装/升级软件的名称和版本号,从服务器下载对应的 目标软件安装/升级包;安装模块,用于在客户端执行所述目标软件安装/升级包中的安装/升级文件, 完成该软件的安装/升级。利用本发明,不仅为用户提供了 “一键安装/升级”功能,而且还可以在安装 /升级过程中免除捆绑内容之苦,无需再担心安装过程中不慎装入有害内容,使软件安装 /升级变得轻松、单纯和绿色,另外,利用本发明,还可以智能、高效、准确地检测软件 安装信息,精准判断软件版本,并根据用户软件升级频率精确推送软件升级信息至用户 桌面。


图1为根据本发明实施例所述的软件智能安装/升级方法流程图。图2为根据本发明实施例所述的客户端检测步骤的流程示意图。图3为根据本发明另一实施例所述的客户端检测步骤的流程示意图。图4为根据本发明实施例所述的软件智能安装系统示意图。图5为根据本发明的实施例所述的检测模块示意图。图6为根据本发明的另一实施例所述的检测模块示意图。
具体实施例方式下面结合附图,对本发明的实施例进行详细说明。如图1所示,为根据本发明实施例所述的软件智能安装/升级方法流程图,首 先,在客户端检测本机已安装的软件,生成待安装/升级软件列表,并为每款待安装/升 级软件提供对应的安装/升级提示(步骤101);然后当客户端侦测到用户根据所述安装 /升级提示选择了某款软件的安装/升级操作后,根据所述待安装/升级软件的名称和版 本号,从服务器下载对应的目标软件安装/升级包(步骤102);然后在客户端执行所述 目标软件安装/升级包中的安装/升级文件,完成该软件的安装/升级。其中,所述在客户端检测本机已安装软件的步骤,可以是根据一预置软件列表 进行对应检测;所述预置软件列表包括软件名称,当客户端检测到本机未安装该软件 时,提示用户下载安装。其中,所述预置软件列表可进一步包括软件的版本号,当客户端检测到本机安装的对应软件的版本号低于该列表中的版本号时,提示用户下载升级。其中,所述预置软件列表可保存于客户端中,或保存于服务器端并定期更新后 向客户端下发。其中,除了可以执行该软件原配的安装升级包或安装升级文件外,所述目标软 件安装/升级包还可以是将该软件原有的安装/升级包中包含的捆绑内容屏蔽后的自制安 装/升级包。其中,所述目标软件安装/升级包的安装/升级文件中可以包括一安装引导脚 本,所述安装引导脚本中屏蔽了有关捆绑内容。 其中,所述安装弓I导脚本可以通过选设安装参数对有关捆绑内容进行屏蔽。其中,所述目标软件安装/升级包的安装/升级文件中可以包括一安装引导脚 本,所述安装引导脚本中包括在执行安装/升级完成后删除特定捆绑文件和/或还原该捆 绑文件修改的环境设置的步骤。其中,所述目标软件安装/升级包的安装/升级文件中可以包括一安装引导脚 本,所述安装引导脚本中包括执行升级文件的替换或增加,和/或对注册环境进行设置 的步骤。其中,所述目标软件安装/升级包的安装/升级文件中可以包括一安装引导脚 本,所述安装引导脚本中包括静默安装参数,以静默方式完成安装/升级。其中,所述目标软件安装/升级包的安装/升级文件中可以包括一安装引导脚 本,所述安装引导脚本中包括创建虚拟桌面,并在虚拟桌面进行安装/升级的步骤。对软件安装/升级包中可能存在的捆绑内容,可以通过对软件安装过程的分析 获得,而对于屏蔽这些捆绑内容的措施,可以是和该软件提供商进行合作等方式进行。例如,可以通过实际模拟安装来考察整个安装过程是否需要用户点击选择,是 否夹带了捆绑内容,这些捆绑内容是否经过了用户点击选择的信息,根据这些信息,可 事先编写提供对应的安装引导脚本,在脚本的执行流程中,可跳过一些安装选择步骤, 也就是选择不安装捆绑内容;而对于未经用户选择而强制安装的捆绑内容,则可以在安 装完成后再卸载该部分捆绑内容,或者终止该捆绑内容的安装进程,或者直接删除安装 文件中的捆绑内容,甚至可以重新制作安装包。在上述脚本中,可以通过静默安装参数或虚拟点击等实现跳过安装选择,例 如,对于“暴风影音”这一款软件,可以通过如下静默参数实现StormCodec.exe/S/ quickasso/skipcheck/ skipyisou/2052其中,/S代表静默安装(不显示用户界面,若没有其他参数,则依系统默认的 语言按照默认的设置安装默认的组件);/quickasso代表安装完成后按推荐/当前格式直接关联文件而不跳出选择对话 框; /skipcheck代表安装时跳过对运行环境的检查;/skipyisou代表安装时跳过对雅虎一搜上网工具条的安装;/2052代表不询问安装语言,直接安装简体中文版。此外,还可以创建虚拟桌面安装,虚拟桌面上的安装,可以更加彻底的避免用 户被打扰,用户在当前桌面上的任何操作都不会被打断。所述虚拟桌面,可以主要利用CreateDesktop、OpenDesktop和SwitchDesktop这几个API函数来实现,如果想在打开的
桌面上运行程序的话还需要的就是CreateProcess函数。在Linux系统中,虚拟桌面是一种将用户的工作区扩展到计算机屏幕边界以外 的方法,这个桌面可以上下左右滚动,就好象一个更大的桌面放置在玻璃屏幕后面,并 且可以四处移动以显示图标、窗口以及其它一些存在于幕后或视野以外的对象。目前, Windows XP> 2003也可以像Linux—样实现虚拟桌面,而且不需要安装任何程序,只要 下载一个msvdm.dll文件就可以了。Windows—共可以提供四个桌面,每个桌面可以应 用不同的背景和相应的快捷键,但是这四个桌面上的快捷方式图标永远是相同的,不能 分别摆放不同的程序。因此,在虚拟桌面上安装软件,不必担心快捷方式的生成问题。根据本发明的一个实施例,可以在服务器端构建一安装脚本数据库,存储有常 用软件的名称、版本号及其对应的所述安装引导脚本,相应的,如图2所示,为根据本 发明实施例所述的客户端检测步骤的流程示意图,首先,由服务器端向客户端下发一数 据库中存储的软件名称及版本号列表(步骤201);然后,客户端根据该列表信息,检测 本机中是否存在相对应的待安装软件(步骤202);根据检测结果,生成待安装软件列表 (步骤203)。客户端的检测并不限于此一种方式,也可以不依据于服务器端的下发列表而发 起,而是由客户端直接发起。如图3所示,为根据本发明另一实施例所述的客户端检测步骤的流程示意图, 首先,客户端检测本机中存在的全部待安装/升级软件名称及版本号,并传送至服务器 端(步骤301);然后,服务器端将客户端传送的待安装/升级软件名称和版本号与数据 库中存储的软件名称及版本号相比较,确定可管理的软件名称和版本号(步骤302);客 户端根据所述可管理的软件名称和版本号,生成待安装/升级软件列表(步骤303)。如图4所示,本发明还提供一种软件智能安装/升级的系统,包括检测模块 401、下载模块402,及安装模块403。其中,检测模块401,用于在客户端检测本机已安装的软件,生成待安装/升级 软件列表,并为每款待安装/升级软件提供对应的安装/升级提示;下载模块403,用于当客户端侦测到用户根据所述安装/升级提示选择了某款软 件的安装/升级操作后,根据所述待安装/升级软件的名称和版本号,从服务器下载对应 的目标软件安装/升级包;安装模块403,用于在客户端执行所述目标软件安装/升级包中的安装/升级文 件,完成该软件的安装/升级。同上所述,检测模块401可以是根据一预置软件列表进行对应检测;所述预置 软件列表包括软件名称,当检测模块检测到本机未安装该软件时,提示用户下载安装。同样,所述预置软件列表可以进一步包括软件的版本号,当检测模块检测到本 机安装的对应软件的版本号低于该列表中的版本号时,提示用户下载升级。相应的,如图5所示,为根据本发明的实施例所述的检测模块示意图,包括 下发单元501,检测单元502,生成单元503,其中下发单元501,用于由服务器端向客户端下发一数据库中存储的软件名称及版本 号列表;
7
检测单元502,用于在客户端根据该列表信息,检测本机中是否存在相对应的待 安装/升级软件;生成单元503,用于根据检测单元的检测结果,生成待安装/升级软件列表。如图6所示,为根据本发明的另一实施例所述的检测模块示意图,包括检测单 元601,比较单元602,生成单元603,其中检测单元601,用于在客户端检测本机中存在的全部待安装/升级软件名称及版 本号,并传送至服务器端;比较单元602,用于在服务器端将客户端传送的待安装/升级软件名称和版本号 与数据库中存储的软件名称及版本号相比较,确定可管理的软件名称和版本号;生成单元603,用于在客户端根据所述可管理的软件名称和版本号,生成待安装 软件列表。同样,本发明实施例所述的安装模块,可以静默安装方式进行安装,或通过创 建虚拟桌面,在虚拟桌面进行安装。虚拟桌面上的安装是本发明的特色之一,配合前述的安装引导脚本,可以使整 个软件安装过程在用户一次点击安装操作后即可完全不用再参与,不仅不用担心不小心 安装上一些捆绑内容,而且用户在当前桌面的任何操作都不会被打断,当前桌面的资源 也不会被占用,实现彻底的免打扰绿色安装方式。
权利要求
1.一种软件智能安装/升级的方法,其特征在于,包括如下步骤在客户端检测本机已安装的软件,生成待安装/升级软件列表,并为每款待安装/升 级软件提供对应的安装/升级提示;当客户端侦测到用户根据所述安装/升级提示选择了某款软件的安装/升级操作后, 根据所述待安装/升级软件的名称和版本号,从服务器下载对应的目标软件安装/升级 包;在客户端执行所述目标软件安装/升级包中的安装/升级文件,完成该软件的安装/ 升级。
2.如权利要求1所述的方法,其特征在于,所述在客户端检测本机已安装软件的步 骤,是根据一预置软件列表进行对应检测;所述预置软件列表包括软件名称,当客户端 检测到本机未安装该软件时,提示用户下载安装。
3.如权利要求2所述的方法,其特征在于,所述预置软件列表进一步包括软件的版本 号,当客户端检测到本机安装的对应软件的版本号低于该列表中的版本号时,提示用户 下载升级。
4.如权利要求2或3所述的方法,其特征在于,所述预置软件列表保存于客户端中, 或保存于服务器端并定期更新后向客户端下发。
5.如权利要求1所述的方法,其特征在于,所述目标软件安装/升级包为将该软件原 有的安装/升级包中包含的捆绑内容屏蔽后的自制安装/升级包。
6.如权利要求1所述的方法,其特征在于,所述目标软件安装/升级包的安装/升级 文件中包括一安装引导脚本,所述安装引导脚本中屏蔽了有关捆绑内容。
7.如权利要求6所述的方法,其特征在于,所述安装引导脚本通过选设安装参数对有 关捆绑内容进行屏蔽。
8.如权利要求1所述的方法,其特征在于,所述目标软件安装/升级包的安装/升级 文件中包括一安装引导脚本,所述安装引导脚本中包括在执行安装/升级完成后删除特 定捆绑文件和/或还原该捆绑文件修改的环境设置的步骤。
9.如权利要求1所述的方法,其特征在于,所述目标软件安装/升级包的安装/升级 文件中包括一安装引导脚本,所述安装引导脚本中包括执行升级文件的替换或增加,和/ 或对注册环境进行设置的步骤。
10.如权利要求1所述的方法,其特征在于,所述目标软件安装/升级包的安装/升 级文件中包括一安装引导脚本,所述安装引导脚本中包括静默安装参数,以静默方式完 成安装/升级。
11.如权利要求1所述的方法,其特征在于,所述目标软件安装/升级包的安装/升 级文件中包括一安装引导脚本,所述安装引导脚本中包括创建虚拟桌面,并在虚拟桌面 进行安装/升级的步骤。
12.—种软件智能安装/升级的系统,其特征在于,包括检测模块,用于在客户端检测本机已安装的软件,生成待安装/升级软件列表,并 为每款待安装/升级软件提供对应的安装/升级提示;下载模块,用于当客户端侦测到用户根据所述安装/升级提示选择了某款软件的安 装/升级操作后,根据所述待安装/升级软件的名称和版本号,从服务器下载对应的目标软件安装/升级包;安装模块,用于在客户端执行所述目标软件安装/升级包中的安装/升级文件,完成 该软件的安装/升级。
13.如权利要求12所述的系统,其特征在于,所述检测模块,是根据一预置软件列表 进行对应检测;所述预置软件列表包括软件名称,当检测模块检测到本机未安装该软件 时,提示用户下载安装。
14.如权利要求12所述的方法,其特征在于,所述预置软件列表进一步包括软件的版 本号,当检测模块检测到本机安装的对应软件的版本号低于该列表中的版本号时,提示 用户下载升级。
全文摘要
本发明提供一种软件智能安装/升级的方法及系统,所述方法首先在客户端检测本机已安装的软件,生成待安装/升级软件列表,并为每款待安装/升级软件提供对应的安装/升级提示;然后当客户端侦测到用户根据所述安装/升级提示选择了某款软件的安装/升级操作后,根据所述待安装/升级软件的名称和版本号,从服务器下载对应的目标软件安装/升级包;再在客户端执行所述目标软件安装/升级包中的安装/升级文件,完成该软件的安装/升级。本发明使用户不再担心捆绑在待安装软件中的无关或有害内容,实现便捷安装,同时还可以使用户及时得知与本机所安装的软件有关的新版本,并可一次性完成多款软件的升级。
文档编号G06F9/445GK102012826SQ20101055253
公开日2011年4月13日 申请日期2010年11月19日 优先权日2010年11月19日
发明者万立新, 欧胜 申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1