[发明专利]一种软件安装的检测方法和装置有效
申请号: | 201010000565.1 | 申请日: | 2010-01-12 |
公开(公告)号: | CN101789888A | 公开(公告)日: | 2010-07-28 |
发明(设计)人: | 王宝剑 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L29/08;G06F11/36 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 何文彬 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 安装 检测 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种软件安装的检测方法和装置。
背景技术
随着计算机技术的发展,客户端软件越来越多,遍及即时通信、音视频播 放、资源下载、网页浏览、输入法、系统辅助等各个门类。随着互联网的普及, 客户端软件已经从十年前通过光盘分发为主的方式,转变成通过网络下载为主 的方式,这大大方便了用户获取客户端软件。同时,客户端软件的版本升级速 度也从十年前的半年或者一年一次,变成了现如今的每月一次甚至几天一次。 客户端软件的更新版本会增加新功能,并解决旧版本中的缺陷和漏洞,用户使 用最新版本可以体验最新功能,并避免软件的已知漏洞对电脑带来的安全威胁。 因此,目前有软件管理器相关的应用程序,可以让用户获取已装客户端软件的 升级版本。在软件管理器中,一个基础且核心的功能就是如何准确的检测用户 机器上某一款软件是否安装,并获得其版本号,从而判断该软件是否需要升级 等。
在现有技术中,软件管理器可以利用如下技术进行软件是否安装的检测: 例如图1所示的Windows的添加删除程序中,各个已安装的软件及其版本信息 都是从注册表的 HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Uninstall HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Uninstall 下的键值扫描获取的。参见图2,扫描获取到软件名称为QQ2009已安装,且该 软件的版本为1.41.1451.0。
在实现本发明的过程中,发明人发现现有技术至少存在以下缺点:
由于现有技术中软件安装的检测只会检测注册表的Uninstall节点下的软件, 对于没有正常注册到系统中的软件、或者注册表信息被部分破坏、或者绿色软 件等都不能正常的检查;另外,注册表Uninstall节点下软件版本号的格式可能 会不规范,不适合与软件升级版本的对比等,导致现有的软件安装的检测技术 方式单一、进而容易出现误判、适应性不好等问题。
发明内容
为了准确地检测出软件是否已经安装到计算机中,本发明实施例提供了一 种软件安装的检测方法和装置。所述技术方案如下:
一种软件安装的检测方法,所述方法包括:
在客户端保存的检测策略文件中获得待检测软件及其对应的检测策略,所 述待检测软件对应的检测策略至少为一条;
根据所述待检测软件的检测策略判定所述待检测软件是否已安装,具体包 括:
根据所述待检测软件的检测策略,检测所述待检测软件的版本号;
如果检测到所述待检测软件的版本号,则判定所述待检测软件已安装;
如果未检测到所述待检测软件的版本号,则判定所述待检测软件为未安装。
所述检测策略文件的获得方法包括:服务器为其搜集到的软件分配的ID和 配置的检测策略;将所述ID及其对应的检测策略发送至所述客户端;所述客户 端将接收到的ID及其对应的检测策略保存在检测策略文件中。
所述检测策略至少包括:
获得待检测软件的指定PE文件,从所述指定PE文件的属性中获得所述待 检测软件的版本号;
和/或
从注册表中获得所述待检测软件的版本号。
所述获得待检测软件的指定PE文件,具体包括:
通过注册表获取所述待检测软件的安装路径,并根据所述安装路径获得所 述待检测软件的指定PE文件;
或
根据所述待检测软件的快捷方式获得所述待检测软件的安装路径,并根据 所述安装路径获得所述待检测软件的指定PE文件。
所述从注册表中获得所述待检测软件的版本号,具体包括:
获取注册表中本地计算机和CurrentUser下的卸载节点的版本号的值。
当所述检测策略为多条时,所述根据所述待检测软件的检测策略,检测所 述待检测软件的版本号,具体包括:
在所述待检测软件的多条检测策略中,获得一条未被执行过的检测策略作 为当前检测策略,并根据所述当前检测策略检测所述待检测软件的版本号;
如果无法获得未被执行过的检测策略作为当前检测策略,则检测结果为未 检测到所述待检测软件的版本号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010000565.1/2.html,转载请声明来源钻瓜专利网。