1.一种软件修复方法,包括:
预先对各个类型代码代表的错误类型进行分析,分析出各个错误类型需要提取的错误定位相关信息,并进行记录,保存各个类型代码与需要获取的错误定位相关信息之间的关系;
获取蓝屏文件;
获取对蓝屏文件进行分析的分析结果,其中,所述分析结果是根据所述各个类型代码与需要获取的错误定位相关信息之间的关系得到的;
当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。
2.根据权利要求1所述的方法,所述对不稳定的软件进行更新包括:
下载并安装该软件的稳定版本;
或者,
下载并安装替代的软件。
3.根据权利要求2所述的方法,在安装软件的稳定版本之前还包括:
比较待安装的稳定版本与不稳定的软件的当前版本的版本号;
如果待安装的稳定版本的版本号低于当前版本的版本号,则卸载该不稳定的软件。
4.根据权利要求2所述的方法,在安装替代的软件之前还包括:
判断待安装的替代软件与不稳定的软件是否冲突;
如果冲突,则卸载该不稳定的软件。
5.根据权利要求1所述的方法,还包括:
如果存在蓝屏文件,但不存在该不稳定的软件的卸载项,则提示用户暂时不能提供修复方案。
6.根据权利要求1至5任一项所述的方法,在执行对应的修复处理之前还包括:
向用户显示提示信息,以便检测客户端是否需要执行对应的修复处理;
如果接收到需要执行修复处理的指示,则触发执行对应的修复处理。
7.根据权利要求1至5任一项所述的方法,还包括:
在完成对应的修复处理之后,提示用户执行重新启动计算机的操作。
8.根据权利要求1至5任一项所述的方法,还包括:
在完成对应的修复处理之后,显示回访时间选项,并提供选择回访时间的操作入口。
9.根据权利要求1至5任一项所述的方法,还包括:
提示用户在问题未能解决的情况下,上传联系方式。
10.根据权利要求1至5任一项所述的方法,所述获取对蓝屏文件进行分析的分析结果包括:
将所述蓝屏文件上传至服务器,以便所述服务器根据数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;
获取服务器返回的分析结果。
11.一种软件修复装置,包括:
蓝屏文件获取单元,用于获取蓝屏文件;
分析结果获取单元,用于获取对蓝屏文件进行分析的分析结果,其中,所述分析结果是根据预先设置的各个类型代码与需要获取的错误定位相关信息之间的关系得到的;其中:
预先对各个类型代码代表的错误类型进行分析,分析出各个错误类型需要提取的错误定位相关信息,并进行记录,保存各个类型代码与需要获取的错误定位相关信息之间的关系;
修复执行单元,用于当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。
12.根据权利要求11所述的装置,所述修复执行单元包括:
稳定版本安装子单元,用于下载并安装该软件的稳定版本;
或者,
替代软件安装子单元,用于下载并安装替代的软件。
13.根据权利要求12所述的装置,还包括:
版本比较单元,用于在安装软件的稳定版本之前,比较待安装的稳定版本与不稳定的软件的当前版本的版本号;
第一卸载单元,用于如果待安装的稳定版本的版本号低于当前版本的版本号,则卸载该不稳定的软件。
14.根据权利要求12所述的装置,还包括:
冲突判断单元,用于在安装替代的软件之前,判断待安装的替代软件与不稳定的软件是否冲突;
第二卸载单元,用于如果冲突,则卸载该不稳定的软件。
15.根据权利要求11所述的装置,还包括:
第一提示单元,用于如果存在蓝屏文件,但不存在该不稳定的软件的卸载项,则提示用户暂时不能提供修复方案。
16.根据权利要求11至15任一项所述的装置,还包括:
第二提示单元,用于在执行对应的修复处理之前,向用户显示提示信息,以便检测客户端是否需要执行对应的修复处理;
触发单元,用于如果接收到需要执行修复处理的指示,则触发执行对应的修复处理。
17.根据权利要求11至15任一项所述的装置,还包括:
第三提示单元,用于在完成对应的修复处理之后,提示用户执行重新启动计算机的操作。
18.根据权利要求11至15任一项所述的装置,其特征在于,还包括:
第四提示单元,用于在完成对应的修复处理之后,显示回访时间选项,并提供选择回访时间的操作入口。
19.根据权利要求11至15任一项所述的装置,还包括:
第五提示单元,用于提示用户在问题未能解决的情况下,上传联系方式。
20.根据权利要求11至15任一项所述的装置,所述分析结果获取单元包括:
上传子单元,用于将所述蓝屏文件上传至服务器,以便所述服务器根据数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;
获取子单元,用于获取服务器返回的分析结果。
21.一种软件修复系统,包括客户端及服务器端,其中,所述客户端包括:
蓝屏文件获取单元,用于获取蓝屏文件;
上传单元,用于将所述蓝屏文件上传至所述服务器端;
所述服务器端包括:
分析单元,用于根据预置的数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;
返回单元,用于将对蓝屏文件进行分析的分析结果返回给所述客户端;
所述客户端还包括:
分析结果获取单元,用于获取对蓝屏文件进行分析的分析结果,其中,所述分析结果是根据预先设置的各个类型代码与需要获取的错误定位相关信息之间的关系得到的;其中:
预先对各个类型代码代表的错误类型进行分析,分析出各个错误类型需要提取的错误定位相关信息,并进行记录,保存各个类型代码与需要获取的错误定位相关信息之间的关系;
修复执行单元,用于当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。
软件修复方法、装置及系统\n技术领域\n[0001] 本发明涉及计算机技术领域,具体涉及一种软件修复方法、装置及系统。\n背景技术\n[0002] 在使用计算机的过程中,时常会遭遇操作系统发生内核级错误进而死机的现象。\n例如,在Windows操作系统中,将这种现象称为蓝屏死机((Blue Screen of Death,BSOD)。\n所谓蓝屏死机,是指当Windows操作系统崩溃或停止执行(由于灾难性的错误或者内部条件阻止系统继续运行下去)时所显示的蓝色屏幕。本质上说,蓝屏死机是Windows操作系统处理错误的一种机制,当Windows内核遇到无法修复的错误时,以蓝屏死机的形式展现,并在蓝屏用户界面简要地给出错误可能的原因及建议,它可能会长时间停留在显示屏上,也可能会在短时间显示之后自动重新启动计算机。出现蓝屏,一般是windows操作系统遇到了非常严重的错误,影响也是非常大的。这种错误多数情况下是由于第三方软件或者硬件上的错误导致的,例如,在第三方软件方面,如果同时安装两个或多个杀毒软件,它们就可能发生冲突,抢夺底层控制权,使系统出现蓝屏死机;在硬件方面,如果将两个不同的内存混插则系统读取数据时由于时钟周期不同,读取数据就会出错,从而出现蓝屏死机,等等。当发生蓝屏死机后,需要定位到具体导致蓝屏死机的原因并解决之,以避免以后再次由于同样的原因导致蓝屏死机的现象。\n[0003] 蓝屏用户界面信息通常是以概述的形式给出问题的原因,例如,“错误原因:进程以过高的中断请求级别访问没有权限访问的内存”,也即,有程序使用了不正确的内存地址,但是并不会给出是哪个程序使用了不正确的内存地址。因此,虽然蓝屏用户界面信息可以帮助定位导致蓝屏死机的原因,但是由于蓝屏用户界面信息太少,使得在绝大部分情况下,通过蓝屏用户界面信息,并不能准确找到问题原因。因此,对于大多数人来说,甚至是一些专业人员,最后都只得用排除法查找问题:依次卸载各个软件或重新安装Windows系统来确定是不是软件导致,但显然会比较费时费力,而且成功率不高。\n发明内容\n[0004] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的软件修复方法和相应的蓝屏修复装置及系统。\n[0005] 依据本发明的一个方面,提供了一种软件修复方法,包括:\n[0006] 获取蓝屏文件;\n[0007] 获取对蓝屏文件进行分析的分析结果;\n[0008] 当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。\n[0009] 可选地,所述对不稳定的软件进行更新包括:\n[0010] 下载并安装该软件的稳定版本;\n[0011] 或者,\n[0012] 下载并安装替代的软件。\n[0013] 可选地,在安装软件的稳定版本之前还包括:\n[0014] 比较待安装的稳定版本与不稳定的软件的当前版本的版本号;\n[0015] 如果待安装的稳定版本的版本号低于当前版本的版本号,则卸载该不稳定的软件。\n[0016] 可选地,在安装替代的软件之前还包括:\n[0017] 判断待安装的替代软件与不稳定的软件是否冲突;\n[0018] 如果冲突,则卸载该不稳定的软件。\n[0019] 可选地,还包括:\n[0020] 如果存在蓝屏文件,但不存在该不稳定的软件的卸载项,则提示用户暂时不能提供修复方案。\n[0021] 可选地,在执行对应的修复处理之前还包括:\n[0022] 向用户显示提示信息,以便检测客户端是否需要执行对应的修复处理;\n[0023] 如果接收到需要执行修复处理的指示,则触发执行对应的修复处理。\n[0024] 可选地,还包括:\n[0025] 在完成对应的修复处理之后,提示用户执行重新启动计算机的操作。\n[0026] 可选地,还包括:\n[0027] 在完成对应的修复处理之后,显示回访时间选项,并提供选择回访时间的操作入口。\n[0028] 可选地,还包括:\n[0029] 提示用户在问题未能解决的情况下,上传联系方式。\n[0030] 可选地,所述获取对蓝屏文件进行分析的分析结果包括:\n[0031] 将所述蓝屏文件上传至服务器,以便所述服务器根据数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;\n[0032] 获取服务器返回的分析结果。\n[0033] 根据本发明的另一方面,提供了一种蓝屏修复装置,包括:\n[0034] 蓝屏文件获取单元,用于获取蓝屏文件;\n[0035] 分析结果获取单元,用于获取对蓝屏文件进行分析的分析结果;\n[0036] 修复执行单元,用于当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。\n[0037] 可选地,所述修复执行单元包括:\n[0038] 稳定版本安装子单元,用于下载并安装该软件的稳定版本;\n[0039] 或者,\n[0040] 替代软件安装子单元,用于下载并安装替代的软件。\n[0041] 可选地,还包括:\n[0042] 版本比较单元,用于在安装软件的稳定版本之前,比较待安装的稳定版本与不稳定的软件的当前版本的版本号;\n[0043] 第一卸载单元,用于如果待安装的稳定版本的版本号低于当前版本的版本号,则卸载该不稳定的软件。\n[0044] 可选地,还包括:\n[0045] 冲突判断单元,用于在安装替代的软件之前,判断待安装的替代软件与不稳定的软件是否冲突;\n[0046] 第二卸载单元,用于如果冲突,则卸载该不稳定的软件。\n[0047] 可选地,还包括:\n[0048] 第一提示单元,用于如果存在蓝屏文件,但不存在该不稳定的软件的卸载项,则提示用户暂时不能提供修复方案。\n[0049] 可选地,还包括:\n[0050] 第二提示单元,用于在执行对应的修复处理之前,向用户显示提示信息,以便检测客户端是否需要执行对应的修复处理;\n[0051] 触发单元,用于如果接收到需要执行修复处理的指示,则触发执行对应的修复处理。\n[0052] 可选地,还包括:\n[0053] 第三提示单元,用于在完成对应的修复处理之后,提示用户执行重新启动计算机的操作。\n[0054] 可选地,还包括:\n[0055] 第四提示单元,用于在完成对应的修复处理之后,显示回访时间选项,并提供选择回访时间的操作入口。\n[0056] 可选地,还包括:\n[0057] 第五提示单元,用于提示用户在问题未能解决的情况下,上传联系方式。。\n[0058] 可选地,所述分析结果获取单元包括:\n[0059] 上传子单元,用于将所述蓝屏文件上传至服务器,以便所述服务器根据数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;\n[0060] 获取子单元,用于获取服务器返回的分析结果。\n[0061] 根据本发明的另一方面,提供了一种软件修复系统,包括客户端及服务器端,其中,所述客户端包括:\n[0062] 蓝屏文件获取单元,用于获取蓝屏文件\n[0063] 上传单元,用于将所述蓝屏文件上传至所述服务器端;\n[0064] 所述服务器端包括:\n[0065] 分析单元,用于根据预置的数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;\n[0066] 返回单元,用于将对蓝屏文件进行分析的分析结果返回给所述客户端;\n[0067] 所述客户端还包括:\n[0068] 修复执行单元,用于当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。\n[0069] 根据本发明的软件修复方法、装置及系统,可以在根据蓝屏文件获得分析结果之后,如果发现蓝屏原因是软件不稳定,则可以对不稳定的软件进行更新,或者直接对不稳定的软件进行卸载,这样可以方便有效地对由软件不稳定导致的蓝屏现象执行修复,由此解决了蓝屏修复效率不高的问题,取得了提高蓝屏修复效率的有益效果。\n[0070] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。\n附图说明\n[0071] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:\n[0072] 图1示出了根据本发明一个实施例的软件修复方法的流程图;\n[0073] 图2示出了根据本发明一个实施例的软件修复装置的示意图;以及\n[0074] 图3示出了根据本发明一个实施例的软件修复系统的示意图。\n具体实施方式\n[0075] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。\n[0076] 参见图1,本发明实施例提供的软件修复方法可以包括以下步骤:\n[0077] S101:获取蓝屏文件;\n[0078] 为了便于确定导致蓝屏死机的原因,Windows操作系统提供了DUMP机制的选项,通过在Windows系统中一些设置,使系统出现蓝屏死机时,自动保存发生错误时的信息到磁盘文件(即蓝屏文件,或称DUMP文件)。这样方便日后通过分析DUMP文件来定位错误原因。并且,Microsoft还提供了可以用来分析DUMP文件的调试工具:Windbg。Windbg提供了大量的命令,通过这些命令组合可以发掘DUMP文件中包含的信息,如蓝屏代码、进程、线程、加载模块、堆栈等信息,通过对这些信息的分析,可能找到导致蓝屏的模块。另外windbg也提供了一个简单的命令:!analyze–v,通过该命令可以直接得到蓝屏的一些重要信息。\n[0079] 在本发明实施例中,首先需要将操作系统设置为,当操作系统发生内核级错误提示时,自动生成记载有提示时刻的系统状态信息的日志文件,例如,前文所述的DUMP文件等等。具体实现时,由于上述生成日志文件的功能一般都是操作系统自带的,因此,只要进行必要的设置即可实现。例如,可以检查系统是否设置为发出内核级错误提示时自动生成日志文件,如果没有,则通过修改注册表等方式进行设置。这样保证当系统发出内核级错误提示时,能自动生成记录有提示时刻的系统状态信息的日志文件,为后续的错误源定位提供前提。\n[0080] 具体在上传蓝屏文件时,可以遵循以下规则:第一,上传3个月内最新的5个Dump(如果不足5个则如数上传)文件;第二,上传的Dump文件为:小于指定大小的文件,例如,\n300KB,且扩展名为.dmp的文件;第三,如果执行完执行完整个修复过程(使用一种修复方案修复蓝屏问题),则在%appdata%目录下记录该Dump文件,下次分析时不再上传此Dump文件;第四,如果后台有了要上传的Dump文件,则用户界面执行完上传流程,但实际不再上传此Dump文件。如果上传失败则提示上传失败页,并提供“重试”入口,以便用户点“重试”,并重新上传;如果本地没有dump文件,则提示没有检测到蓝屏信息存储文件,同时将dump文件保存开关打开。\n[0081] 其中,%appdata%是一个环境变量,环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如path,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。例如,使用环境变量定义好的一个位置,应用程序可以依据“%”里面的名称来查询环境变量列表,就可以找到预先定义好的这个位置,进而从中找到需要的文件。\n[0082] 将蓝屏文件上传到服务器之后,就可以在服务器侧对蓝屏文件进行分析。具体的,在日志文件中,一般都会为当前的错误类型提供类型代码,这种错误代码是由系统自动生成的,例如0x7f,等等。其中,各个代码分别对应着怎样的错误,从哪些信息中可以分析出来,都是可以通过经验的积累获知的。也就是说,对于经验足够丰富的人员,在得知错误类型代码之后,就可以知晓应该从日志文件中去提取哪些信息,进而分析出错误发生在哪个模块上。因此,在本发明实施例中,为了能够通过程序自动完成对日志文件的分析工作,可以预先对各个类型代码代表的错误类型进行分析,分析出各个类型下需要提取的错误定位相关信息,并进行记录,保存下各个类型代码与需要获取的错误定位相关信息之间的关系。\n例如,对于代码为0x7f的错误类型而言,通过大量的分析经验归纳总结发现,该错误大多是由某个驱动占用了过多的堆栈导致堆栈溢出引起的。因此,如果能够从日志文件中提取出蓝屏时刻各个驱动对堆栈的占用情况,其中对堆栈占用最多的就可能是引起此次蓝屏的模块。因此,针对该代码对应的错误类型,需要获取的错误定位相关信息就可以是各个驱动对堆栈的占用情况。其他代码也都分别进行类似的处理,这样可以得到保存有错误的类型代码与需要提取的错误定位相关信息之间的对应关系的列表,供后续查询使用。\n[0083] 同时,还可以预先根据经验分析,得到当模块与软件或者硬件之间的对应关系,保存各个模块与各自对应的软件或硬件之间的对应关系,形成一个数据库,这样当根据日志文件定位到某模块时,通过查询该数据库就可以得到该引起当前错误的错误源是哪个软件或者硬件,等等。\n[0084] 当然,在实际应用中,对蓝屏文件进行分析的相关操作也可以直接在客户端进行,为此,可以在客户端保存所需的数据库,并实时进行更新,这样,就可以不必再将蓝屏文件上传到服务器,节省网络传输等开销。\n[0085] S102:获取对蓝屏文件进行分析的分析结果;\n[0086] 如果是将蓝屏文件上传到服务器,则在服务器对上传的蓝屏文件分析完毕之后,就可以将分析结果返回给客户端,这样客户端就可以获取到服务器的分析结果。如果是在客户端本地对蓝屏文件进行分析,则分析完毕之后就可以获取到分析结果。\n[0087] S103:当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。\n[0088] 在服务器给出的分析结果中,不仅能够显示蓝屏原因为软件不稳定,还可以显示出不稳定的软件是哪个或者哪些。此时,对应的修复处理方案可以是将不稳定的软件进行更新或者直接卸载,都可以达到修复的目的。其中,对软件进行更新时,可以从同一软件的其他版本中选择稳定的版本,进行更新,或者,也可以选择其他的类似功能的软件进行替代。其中,选择软件的稳定版本或者选择替代软件的过程可以由“软件管家”等工具协助完成,其中,“软件管家”一款一站式下载安装软件、管理软件的平台,它一般拥有最新最全的软件数据库,各种软件以及软件的各个版本的功能、稳定性等信息都会收集并保存在数据库中,因此,在需要选择软件的稳定版本或者可替代的软件时,就可以将现有软件的名称、版本等信息发送给软件管家,软件管家就可以从数据库中查找到稳定的版本,或者可替代的软件,并返回给电脑门诊即可。当然,电脑门诊也可以预先建立自己的软件数据库,直接在数据库中查询。总之,具体的修复方式有以下三种:下载并安装该软件的稳定版本,或者,下载并安装替代的软件,或者,直接卸载不稳定的软件。\n[0089] 具体实现时,可以自动从上述三种方式中选择任意一种为用户进行蓝屏修复,或者也可以先征求用户的意见,在用户接受了某种方式之后,再进行具体的修复操作。例如,可以首先在用户界面上提示以下文字“可能是由于XXX软件自身存在某些问题,在一些特定的环境下运行导致了蓝屏崩溃,建议更新或卸载该软件,点击‘下一步’开始修复蓝屏问题”,在用户点击了“下一步”之后,再向用户提供上述三个选项。这三个选项为单选模式,点击后则展开该项的修复内容,此时“上一步”可点击,点击后返回到分析结果页,选项的内容区域不可点击,只可点击单选按钮。用户界面上的文字提示可以包括以下内容“您可以尝试以下方式修复因XXX导致的蓝屏问题”,第一个单选框之后显示“安装稳定版本”,下面还可以显示有对这一选项的解释“通过电脑门诊,安装该软件的稳定版本。一般这种方法,可以解决大部分因软件导致蓝屏的问题”;第二个单选框之后显示“选择替代软件”,同样,下面还可以显示有对这一选项的解释“通过更换软件可以避免蓝屏发生,电脑门诊为您准备了一款该软件的同类软件,可尝试安装使用”;第三个单选框之后可以显示“卸载该软件”,下面的解释为“如果这个软件不是您经常使用,或者不是您安装的软件,建议您卸载以解决蓝屏问题”。\n[0090] 当点击“安装稳定版本”的按钮后,则展开该选项,提供需要安装的软件,用户界面中可以显示出需要安装的软件的图标、软件名称、软件版本、软件大小以及“下载并安装”按钮。点击“下载并安装”按钮后,执行下载安装操作,首先创建连接,进度条为0,此时如果点“结束”则返回初始状态。下载过程中显示下载百分比和下载速度。下载完毕后默认调出安装程序,用户界面显示正在安装,如果用户关闭了安装程序,但软件有没有安装完毕,用户界面显示按钮“安装”,点击后则执行下载安装操作(如已经下载下来则直接执行安装操作,调出安装程序)。安装完成后用户界面显示“安装完成”,此时才可点击“下一步”。\n[0091] 需要说明的是,对于同一软件的不同版本而言,如果电脑上已经安装了低版本,则在新安装高版本时,可以直接进行覆盖安装,也即不需要对低版本执行卸载操作;但是,如果电脑上已经安装了高版本,则在新安装低版本时,则覆盖安装的方式可能无效。因此,在安装稳定版本之前,还可以首先通过软件管家检测,如果在安装稳定版本时检测到本地版本高于要安装的版本,则在用户界面上弹窗提示将本地版本卸载,流程如下:首先弹窗提示“检测到即将安装的版本比现有版本低,覆盖安装可能无效,请先卸载现有版本再进行安装”,同时显示“立即卸载”按钮,点“立即卸载”则执行该软件的卸载过程,流程如下:首先分析卸载信息,弹出卸载程序,用户界面显示卸载XXX,如果用户关闭卸载程序,则返回到“立即卸载”用户界面,卸载过程不提供强力卸载,标准卸载即可,卸载完成后,点击继续修复蓝屏问题则返回安装稳定版本用户界面,并开始下载稳定版本。\n[0092] 当点击选择替代软件的按钮后,则展开该选项,提供可替代的软件,用户界面显示软件图标、软件名称、软件版本、软件大小、软件简介以及“下载并安装”按钮。此时另外两个单选项也可以点击,点击后展示相应的修复内容,点击“下载并安装”后,执行下载安装操作。\n[0093] 这里需要说明的是,在这种安装可替代的软件的情况下,可替代的软件与现有软件是两个不同的软件,如果两个软件同时存在,则可能发生冲突。因此,下载或者安装可替代的软件之前,可以判断两个软件是否存在冲突(也可以借助“软件管家”等工具的软件数据库进行判断),如果存在,则首先将现有的软件卸载,然后再安装可替代的软件。或者,根据后台配置,如果要替代的软件和该导致蓝屏的软件存在冲突,则可以弹窗提示卸载导致蓝屏的软件,具体的,提示信息可以是“检测到XXX没有被卸载,为了达到更好的修复效果,建议卸载XXX后再安装替代软件”,以及“立即卸载”按钮,卸载的过程与前述卸载高版本时一致,这里不再赘述。\n[0094] 当点击“卸载该软件”的按钮后,则展开该选项,显示要卸载的软件,用户界面显示软件图标、软件名称,此时另外两个单选项也可以点击,点击后展示相应的修复内容,点击“立即卸载”,则调用软件卸载程序,执行卸载软件操作,如果是绿色版软件,没有卸载项,则为禁用此驱动。点击“立即卸载”的流程如下:首先查找该软件的卸载项,用户界面显示进度条和正在分析卸载信息,如果有残留项目则提供强力清扫,完成后用户界面显示卸载完成。\n[0095] 修复完成后需要用户重启电脑检查修复效果,因此,修复完成后可以提示重启,重启时还可以创建计划任务,默认是3天后回访,用户可选一周或一个月后,一个月按30天计算,同时,进入到此页面则记录dump文件已经分析过了,当然,如果用户选择不需要回访,则不进行计划任务的创建。具体实现时,用户界面上可以显示以下文字内容:“蓝屏修复已完成!需要重启您的电脑查看修复效果”;“请保存您电脑上打开的文档,关闭其他正在运行的程序,然后点击下面的按钮重启您的电脑。因蓝屏修复后判断是否解决需要观察一段时间,所以重启后会在一段时间后回访您,您可以根据需要选择回访时间”,同时,以单选框的方式,给出以下几个选项:三天、一周、一个月以及不需要回访。\n[0096] 如果分析是软件不稳定导致,但是没有找到该软件的卸载项,且蓝屏文件存在,则可以提示用户暂时不能提供修复方案。如果分析是软件不稳定导致,但蓝屏文件已经不存在,则提示用户“未检测到导致蓝屏的文件,您的电脑不需要修复”,“经分析您的电脑蓝屏是由于XXX导致,但可能是您已经更新或卸载了该软件,蓝屏文件已不存在,所以电脑也不会再蓝屏,无需再进行修复。您可以尝试下次蓝屏时再来电脑门诊进行修复”。\n[0097] 另外,如果按照提示的方式进行修复之后,蓝屏问题没有解决,则可以让用户提交联系方式,由工程师联系上传。用户界面显示:“很遗憾!电脑门诊未能帮您解决蓝屏问题”,“您可以留下您的联系方式,电脑门诊会将您的联系方式和蓝屏修复记录一并提交给工程师,工程师会联系您进一步分析蓝屏原因”,“您的联系方式:”,以及“提交蓝屏修复信息”按钮,点击该按钮后,用户界面显示“正在提交您的蓝屏修复信息”,如果提交失败,则用户界面显示“提交失败!请检查您的网络连接”,“提交失败通常是网络故障或服务器繁忙导致,请检查您的网络连接后,点击‘重试’尝试重新提交”。如果提交成功,则用户界面显示“您的蓝屏修复信息已提交成功!工程师会尽快联系您分析蓝屏原因”。\n[0098] 与本发明实施例提供的软件修复方法相对应,本发明实施例还提供了一种软件修复装置,参见图2,该装置包括:\n[0099] 蓝屏文件获取单元201,用于获取蓝屏文件;\n[0100] 分析结果获取单元202,用于获取对蓝屏文件进行分析的分析结果;\n[0101] 修复执行单元203,用于当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。\n[0102] 其中,修复执行单元203包括:\n[0103] 稳定版本安装子单元,用于下载并安装该软件的稳定版本;\n[0104] 或者,\n[0105] 替代软件安装子单元,用于下载并安装替代的软件。\n[0106] 在具体实现时,该装置还可以包括:\n[0107] 版本比较单元,用于在安装软件的稳定版本之前,比较待安装的稳定版本与不稳定的软件的当前版本的版本号;\n[0108] 第一卸载单元,用于如果待安装的稳定版本的版本号低于当前版本的版本号,则卸载该不稳定的软件。\n[0109] 冲突判断单元,用于在安装替代的软件之前,判断待安装的替代软件与不稳定的软件是否冲突;\n[0110] 第二卸载单元,用于如果冲突,则卸载该不稳定的软件。\n[0111] 第一提示单元,用于如果存在蓝屏文件,但不存在该不稳定的软件的卸载项,则提示用户暂时不能提供修复方案。\n[0112] 第二提示单元,用于在执行对应的修复处理之前,显示提示信息,以便检测客户端是否需要执行对应的修复处理;\n[0113] 触发单元,用于如果接收到需要执行修复处理的指示,则触发执行对应的修复处理。\n[0114] 第三提示单元,用于在完成对应的修复处理之后,提示执行重新启动计算机的操作。\n[0115] 第四提示单元,用于在完成对应的修复处理之后,显示回访时间选项,并提供选择回访时间的操作入口。\n[0116] 第五提示单元,用于提示在问题未能解决的情况下,上传联系方式。\n[0117] 具体实现时,分析结果获取单元202具体可以包括:\n[0118] 上传子单元,用于将所述蓝屏文件上传至服务器,以便所述服务器根据数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;\n[0119] 获取子单元,用于获取服务器返回的分析结果。\n[0120] 与前述软件修复装置相对应,本发明实施例还提供了一种软件修复系统,参见图\n3,该系统可以包括客户端301及服务器端302,其中,所述客户端301可以包括:\n[0121] 蓝屏文件获取单元3011,用于获取蓝屏文件\n[0122] 上传单元3012,用于将所述蓝屏文件上传至所述服务器端;\n[0123] 所述服务器端302包括:\n[0124] 分析单元3021,用于根据预置的数据库中保存的蓝屏特征信息与蓝屏原因之间的对应关系对所述蓝屏文件进行分析;\n[0125] 返回单元3022,用于将对蓝屏文件进行分析的分析结果返回给所述客户端;\n[0126] 所述客户端301还包括:\n[0127] 修复执行单元3013,用于当所述分析结果显示蓝屏原因为软件不稳定时,执行对应的修复处理,所述修复处理包括对不稳定的软件进行更新或卸载。\n[0128] 总之,通过本发明实施例提供的上述软件修复装置及系统,可以在根据蓝屏文件获得分析结果之后,如果发现蓝屏原因是软件不稳定,则可以对不稳定的软件进行更新,或者直接对不稳定的软件进行卸载,这样可以方便有效地对由软件不稳定导致的蓝屏现象执行修复。\n[0129] 在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。\n各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。\n[0130] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。\n[0131] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。\n[0132] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。\n[0133] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。\n[0134] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的蓝屏修复设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。\n[0135] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
法律信息
- 2022-07-26
专利权的转移
登记生效日: 2022.07.14
专利权人由北京奇虎科技有限公司变更为北京奇虎科技有限公司
地址由100088 北京市西城区新街口外大街28号D座112室(德胜园区)变更为100015 北京市朝阳区酒仙桥路6号院2号楼1至19层104号内8层801
专利权人由奇智软件(北京)有限公司 变更为空
- 2018-07-03
- 2015-07-08
实质审查的生效
IPC(主分类): G06F 11/07
专利申请号: 201510142490.3
申请日: 2012.08.22
- 2015-06-10
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2011-01-12
|
2010-08-20
| | |
2
| |
2009-09-16
|
2009-04-16
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |