一种强力卸载软件的方法及系统的制作方法

文档序号:8361257阅读:167来源:国知局
一种强力卸载软件的方法及系统的制作方法
【专利说明】一种强力卸载软件的方法及系统
[0001]本发明专利申请是申请日为2011年01月04日、申请号为201110005069.X、名称为“一种强力卸载软件的方法及系统”的中国发明专利申请的分案申请。
技术领域
[0002]本发明涉及软件卸载技术领域,尤其涉及一种强力卸载软件的方法和系统。
【背景技术】
[0003]随着计算机与互联网技术的发展,各种应用软件也层出不穷。大部分的软件在安装时都非常容易和友好,但在卸载时,有些软件出于某种目的或自身的不规范,常常无法彻底的从用户电脑中卸载删除,并残留下大量垃圾文件,为用户造成了很大的困扰,同时也影响了计算机的性能。
[0004]而解决此一问题的方法,目前只能因软件类型而异。由于每款软件都有其自身的编写特点和安装过程,因此其残留文件的方式和位置也各不相同,这就导致了解决此问题的方式大都相当个性化。例如,针对某款软件的卸载残留问题,有人总结出,可先进入安全模式,然后进入注册表,查看特定的键值,之后再删除特定的安装目录;而对于另一款软件的残留,则需要在命令行中执行特定的命令。但是这些方式,不仅需要对计算机知识具有相当的了解,而且一旦稍有失误,就会对计算机的运行或安全造成极大的损害。
[0005]总之,目前对于无法彻底从用户电脑中卸载的软件,缺乏一种简单、统一的解决之道,尤其对于那些对电脑的使用不是特别熟练的用户来说,不仅对于常规卸载过程中的层层选择感到茫然和畏惧,尤其对那些不能完全卸载删除的软件,更是素手无策。
[0006]因此,如何提供一种强力卸载软件的方法和系统,使用户可简便、彻底的卸载软件,已经成为业界亟待解决的问题。

【发明内容】

[0007]本发明所要解决的技术问题在于提供一种强力卸载软件的方法和系统,以使用户简便、彻底的卸载本机安装软件。
[0008]为解决上述技术问题,本发明提供一种强力卸载软件的方法,包括如下步骤:
[0009]在客户端检测本机已安装的软件,包括软件名称及版本信息,为每款已安装软件提供对应的卸载提不;
[0010]当侦测到用户根据所述卸载提示选择了某款软件的卸载操作后,根据该软件的名称和版本,从数据文件中获得预置的与该软件对应的安装信息,所述安装信息包括该软件在安装过程中添加的文件,以及对注册表和/或系统文件的修改;
[0011]根据所述对应的安装信息,将该软件在安装过程中添加的文件以及对注册表和/或系统文件的修改进行删除或恢复。
[0012]本发明进而还提供一种强力卸载软件的系统,包括:
[0013]数据模块,用于存储不同软件的安装信息,所述安装信息包括软件名称及版本,添加的文件,以及对注册表和/或系统文件的修改;
[0014]检测模块,用于在客户端检测本机已安装的软件,包括软件名称和版本信息,为每款已安装软件提供对应的卸载提示;
[0015]侦测模块,用于侦测用户是否根据所述卸载提示选择了某款软件的卸载操作;
[0016]信息获取模块,用于当侦测到用户根据所述卸载提示选择了某款软件的卸载操作后,根据该软件的名称和版本,从数据模块中获得与该软件对应的安装信息;
[0017]卸载模块,用于根据该对应的安装信息,将该软件在安装过程中添加的文件以及对注册表和/或系统文件的修改进行删除或恢复。
[0018]其中,所述数据模块可以位于客户端本机或远程服务器。
[0019]本发明无需占用过多客户端资源,也无需用户针对不同软件执行不同的卸载操作,为用户提供了一种简便、统一而且彻底的软件卸载机制。本发明不仅适用于桌面计算机终端,而且也适用于手机等其他移动客户端。
【附图说明】
[0020]图1为根据本发明实施例所述的强力卸载软件的方法流程图。
[0021]图2为根据本发明实施例所述的强力卸载软件的系统示意图。
[0022]图3为根据本发明实施例所述的卸载模块的结构示意图。
[0023]图4为根据本发明另一实施例所述的卸载模块的结构示意图。
[0024]图5为根据本发明又一实施例所述的卸载模块的结构示意图。
【具体实施方式】
[0025]下面结合附图,对本发明的实施例进行详细说明。
[0026]如图1所示,为根据本发明实施例所述的强力卸载软件的方法流程图,首先在客户端检测本机已安装的软件,包括软件名称及版本信息,为每款已安装软件提供对应的卸载提示(步骤101);当侦测到用户根据所述卸载提示选择了某款软件的卸载操作后,根据该软件的名称和版本,从数据文件中获得预置的与该软件对应的安装信息,所述安装信息包括该软件在安装过程中添加的文件,以及对注册表和/或系统文件的修改(步骤102);之后根据所述对应的安装信息,将该软件在安装过程中添加的文件以及对注册表和/或系统文件的修改进行删除或恢复(步骤103)。
[0027]所述数据文件可以是数据库的形式,也可以是列表或文本等信息格式。根据本发明的实施例,数据文件可以是位于客户端本机,也可以位于远程服务器。下面是以数据库形式进行实例说明。
[0028]客户端软件的安装过程,是可以通过一个长期驻留在客户端机器中的程序来监测的,将软件安装行为一一记录下来,但这种方式占用了客户端的资源,会影响用户体验,因此,本发明优选采用的方式是事先对软件的安装过程进行模拟和分析后,确定出该软件的安装信息,并将该安装信息存储于一数据库中。
[0029]所述安装信息的确定,可以包括例如该软件是否是强制安装于C盘还是可选择安装于其他盘符下,会建立怎样的文件目录和路径,安装过程会释放哪些文件,对注册表项或系统文件进行了哪些修改等,这些安装信息都可以事先收集确定出来。之后,可以在服务器端构建一数据库,将不同软件的安装信息汇总存储于数据库中。
[0030]本发明并不干涉客户端用户的卸载选择,如果用户选择直接通过软件自身带有的卸载程序来执行卸载也是可以的,但由于仅执行这种常规卸载常常会发生卸载不彻底的情况,因此,本发明还是推荐用户使用本发明的卸载方式进行软件卸载。
[0031]当用户选择使用本发明提供的卸载方式进行软件卸载的时候,本发明会通过扫描检测出本机已经安装的软件,优选的,可进一步列出一已安装软件的列表,并为每款已安装软件提供一卸载提示,例如可以是一个按钮,上面写有“强力卸载”字样。
[0032]接下来,可侦测用户是否按下了“强力卸载”按钮,如果有对应按钮被选择,则说明用户希望卸载该软件。但有些软件在卸载时,可能由于正在被其他程序所占用,因此可能导致无法正常删除,这也是导致无法彻底卸载软件的一个重要原因之一。
[0033]针对这种情况,根据本发明的实施例,当侦测到用户选择了某款软件的卸载操作后,可以通过执行常规卸载过程来删除有关文件,或直接进行文件删除,或先执行常规卸载再删除残留文件,不管采用哪种方式,在执行删除动作之前,都可以首先判断该软件文件是否正在被其他某个程序所占用,如果是,则解除该欲卸载的软件文件与该占用程序之间的锁定。
[0034]关于解除锁定的方式,可以是通过进程扫描,强制关闭该占用程序,终止其进程或服务等方式实现。
[0035]当解除了与占用程序之间的锁定之后,即可正常删除文件了,但具体应该删除哪些文件,则需要根据与该软件相对应的安装信息来确定。安装信息中记载了该软件在安装过程中曾经释放的文件,以及对注册表和系统文件所作的修改,因此,只要按照安装信息中的记录,执行反安装过程即可。
[0036]但有一个问题应该注意,安装信息中,有些是固定的,例如对注册表项的修改,但有些是允许用户选择的,例如安装盘符和目录,对于允许用户选择的内容,可以通过执行一个扫描搜索过程来确定在具体客户端中具体的安装位置,确定具体安装位置以后即可进行文件的反安装过程。当然,也可以将可能的安装文件目录信息放入安装信息中,并据此执行扫描过程。
[0037]如果数据库位于远程服务器时,客户端从数据库获得安装信息的方式,可以有多种,例如,当执行卸载前,首先由客户端向服务器请求与该软件名称和版本相对应的安装信息;服务器收到该请求后,将该软件的安装信息发送至该客户端。但这种方式要求客户端在执行卸载时必须要与服务器端联机在线,对当时的使用环境有一些限制。
[0038]为此,根据本发明的另一个实施例,还可以是事先由客户端定期将本机已安装软件的名称和版本信息告知服务器;服务器将与该客户端已安装软件对应的安装信息发送至客户端存储。这样当客户端执行卸载时,即使未在线,也可以直接调出本机内存储的安装信息。
[0039]当然,在客户端的信息存储也可以是数据文件的形式,即相当于数据文件位于客户端本机。
[0040]在获得与该软件对应的安装信息,并且确定了在本客户端的具体安装位置后,即可将该软件添加的文件及对注册表和/或系统文件的修改进行删除或恢复。具体的执行方式有多种选择,例如:可以首先调用该软件自带的卸载程序,执行常规卸载;在常规卸载完成后,根据所述对应的安装信息搜索对应位置,查询是否存在残余文件或注册表项,如果存在,则将其直接删除。
[0041]通过执行常规卸载,虽然可以较为稳妥的卸载软件,但速度可能较慢,尤其是存在残余文件时,还需要再次执行搜索。因此,根据本发明的另一实施例,也可以不执行常规卸载,而是直接根据所述对应的安装信息,搜索可能涉及的安装软件的目录和/或注册表项;如果搜索到与所述安装信息相匹配的内容,则直接删除或恢复。
[0042]在某些应用环境中,例如一些手机的操作系统,要求在执行软件卸载时,必须要经过该软件自带的卸载程序才能完成,这虽然可以在一定程度上防止误删除软件,但也给一些恶意程序留下了可乘之机。例如,一些恶意程序篡改了应用软件自带的卸载程序,导致一旦运行该卸载程序就又会触发该恶意程序,从而无法彻底删除病毒。针对这种情况,本
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1