一种软件中的模块修复方法及该软件设备的制作方法

文档序号:6356997阅读:135来源:国知局
专利名称:一种软件中的模块修复方法及该软件设备的制作方法
技术领域
本发明涉及电子计算机技术,尤其涉及软件修复方法。
背景技术
随着电子计算机技术的快速发展,越来越多的人开始使用PC机(个人计算机)、 PDA(掌上电脑)、手机等电子设备上网,从事网络活动,如浏览网页、网络聊天、查看电子邮件等。人们在使用浏览器、聊天工具或者邮箱客户端等软件工具时,一旦用户正在使用的软件工具(如浏览器)中的某一模块遭到破坏或者发生异常时,用户就无法继续使用此模块,严重时甚至无法使用整个软件工具(如浏览器)。如果用户想要继续使用此种软件工具,通常的做法是重新下载此种软件工具,然而再安装。此种方式,操作相对繁琐,给用户带来了不便。并且如果用户正在使用某种软件工具(如浏览器)从事重要或紧急事务时, 若该软件工具发生异常,很可能会给用户带来麻烦,甚至带来损失。此外,人们在使用软件工具(如浏览器)时,一旦软件出错,只能靠人工感知,即通过人眼来发现软件有错误发生。并且在发现软件出错后,也不能智能地对该出错内容进行修复。此种方式,由于未能及时检测到软件发生了错误,也没有对出错内容作出相应修复, 因此很可能导致软件的崩溃。并且此种由人工来感知软件出错并对错误内容进行修复的方式,操作繁琐,给用户带来了不便。尤其是对于那些初学互联网以及只具有简单互联网知识的用户来说,由他们来及时发现软件有错误发生,某些情况下会存在着一定的困难。然而, 如果不能及时发现错误并对错误进行修复,用户就无法正常使用该软件工具,从而影响用户通过该软件工具进行正常的学习、工作或娱乐。

发明内容
本发明提供了一种软件中的模块修复方法及该软件设备。本发明的目的是在软件中的模块出错时通过网络方式进行自修复,从而使该软件能够正常使用。本发明的目的还在于通过网络方式对软件进行自检测,以免人工检测所带来的不及时、操作繁琐等问题。在第一方面,本发明提供了一种软件中的模块修复方法。该方法在该软件中的模块出错时,以访问网页地址的方式获取与出错内容相对应的正确内容。并将该获取到的正确内容直接加载到系统内存中,且在使用该模块时直接从内存中调取相应正确内容。进一步地,所获取到的内容为配置文件和/或数据文件。进一步地,上述检测是对该软件部分或全部模块的正确性和/或完整性进行的检查。进一步地,上述检测步骤包括扫描与该软件相关文件的步骤。进一步地,上述扫描步骤包括提取所述文件中的特征内容部分,并生成当前文件列表的步骤。 进一步地,提取特征内容部分所采用的方法是全文摘要算法。
进一步地,根据标准文件列表对所述当前文件列表进行分析。进一步地,上述分析步骤包括将该当前文件列表与标准文件列表将匹配,并在该当前文件列表中某一项或多项内容与标准文件列表中的相应内容不匹配时,判定该软件出错的步骤。进一步地,上述标准文件列表包括正确文件的特征内容部分,以及包括该正确文件的下载地址,且该地址是所述访问网页的地址。进一步地,在本地预置保存正确数据目录,并根据该目录查找所述下载正确内容的下载地址,且该地址是所述访问网页的地址。在第二方面,本发明提供了一种软件中的模块修复方法。该方法以访问网页地址的方式请求对所述软件进行检测。在检测到该软件中的模块出错时,对相应出错部分进行修复。进一步地,上述请求检测步骤包括通过获取网页地址提供的用于检测该软件出错的分析函数,并用该分析函数监测该软件是否出错。进一步地,在上述以访问网页地址的方式请求对该软件进行检测之前还包括,检测该软件是否正常,如果该软件异常则以访问网页地址的方式请求对该软件进行检测;或者根据用户发出的检测指令,以访问网页地址的方式请求对所述软件进行检测。进一步地,上述检测是对该软件部分或全部模块的正确性和/或完整性进行检查。进一步地,上述检测步骤包括扫描与该软件相关文件的步骤。进一步地,上述扫描步骤包括提取所述文件中的特征内容部分,并生成当前文件列表的步骤。进一步地,上述提取特征内容部分所采用的方法是全文摘要算法。进一步地,根据标准文件列表对上述当前文件列表进行分析。进一步地,上述分析的步骤包括,将该当前文件列表与标准文件列表将匹配,并在该当前文件列表中某一项或多项内容与标准文件列表中的相应内容不匹配时,判定该软件出错的步骤。进一步地,上述修复的步骤包括获取与所述出错内容相对应正确内容的步骤。进一步地,上述修复的步骤包括以访问网页地址的方式获取所述正确内容。进一步地,所获取到的内容为配置文件和/或数据文件。在第三方面,本发明提供了一种软件设备。该软件设备包括获取模块、第一修复模块。该获取模块在所述软件中的模块出错时,以访问网页地址的方式获取与出错内容相对应的正确内容。该第一修复模块将所获取到的正确内容直接加载到系统内存中,并在使用所述模块时直接从内存中调取相应正确内容。进一步地,该第一检测模块用于监测所述软件,以查找该软件中已出错的模块。进一步地,该第一检测模块是对该软件部分或全部模块的正确性和/或完整性所进行的检查。在第四方面,本发明提供了一种软件设备。该设备包括请求检测模块、第二修复模块。该请求检测模块以访问网页地址的方式请求对所述软件进行检查。该第二修复模块在检测到该软件中的模块出错时,对相应出错部分进行修复。
进一步地,请求检测模块还用于获取网页地址提供的用于检测该软件错误的分析函数,并利用该分析函数监测软件错误。进一步地,该软件设备还包括包括第二检测模块,该第二检测模块用于检测该软件是否正常,如果软件异常则以访问网页地址的方式请求对所述软件进行检测;或根据用户发出的检测指令,以访问网页地址的方式请求对所述软件进行检测。进一步地,第二检测模块是对是对该软件部分或全部模块的正确性和/或完整性进行的检查。进一步地,第二修复模块包括以访问网页地址的方式获取与所述出错内容相对应正确内容的子模块。本发明一方面能够对软件中的已出错模块进行自修复,而无需用户到网上查找并下载正确版本的软件并安装,为用户提供了方便,节约了时间。并且如果软件是被病毒等恶意攻击时,由于本发明是将获取到的正确内容直接加载到内存中,而不保存到本地,因此内存中的正确内容不易被病毒破坏,稳定性更好。并且将正确内容直接加载到内存中而不保存到本地,此种方式执行速度更快。本发明另一方面还能够对软件进行自检测,而无需人工来检查,因此能够更加及时准确地发现错误,用户体验更佳。


下面将参照附图对本发明的具体实施方案进行更详细的说明,在附图中图1是本发明一个实施例的软件中自修复方法流程图;图2是本发明一个实施例的浏览器自修复方法流程图;图3是本发明一个实施例的自修复软件设备框图;图4是本发明另一个实施例的软件自检测方法流程图;图5是本发明另一个实施例的浏览器自检测方法流程图;图6是本发明另一个实施例的自检测软件设备框图。
具体实施例方式图1是本发明一个实施例的软件自修复方法流程图。在步骤110,软件中的模块出错时,以访问网页地址的方式获取与所述出错内容相对应的正确内容。在步骤120,将该获取到的正确内容直接加载到系统内存中,而不保存到本地,并在使用该模块时直接从内存中调取相应正确内容。由于上述步骤110是以网络方式(即以访问网页地址的方式)获取与出错内容相对应的正确内容。因此该软件具有自修复功能,无需人工修复。并且由于上述步骤120是将获取到的正确内容加载到系统内存中,而无需保存到本地。因此,该软件执行速度更快, 且稳定性能更好,当该软件遭到病毒攻击而导致其模块被破坏时,本实施例将正确内容加载到内存而不保存到本地的方式,使得该正确内容不被病毒所破坏,进而保证该浏览器能够正常使用。需要说明的是,本发明软件可以是浏览器、聊天工具、邮箱客户端等任意一种软件设备。图2是以浏览器为例,对图1软件修复方法做进一步阐述。图2是本发明一个实施例的浏览器的自修复方法流程图。以下步骤210到步骤250是监测浏览器,并在该浏览器出错时查找到该浏览器中已出错模块的一个具体实施例,本发明不限于此种监测方式。在步骤210,该浏览器扫描与该浏览器相关的所有文件,包括扫描该浏览器安装目录下的所有文件、与该浏览器相关的系统文件、配置文件等。例如,一个与该浏览器相关的系统文件是urlmon. dll文件。在步骤220,该浏览器每扫描一个文件,就会采用md5算法提取该文件中的特征内容部分,且该特征内容能够唯一性地标识该文件。需要说明的是,上述提取文件中的特征内容不限于采用md5算法,也可以采用CRC、md2、md3、md4等任意一种全文摘要算法。较佳地,该浏览器还会获取文件的版本号、文件大小等。在步骤230,在该浏览器扫描完所有文件后,生成一个当前文件列表,且该当前文件列表包含每一文件的特征内容。较佳地,该当前文件列表还包含文件版本号、文件大小等,且每一文件的特征内容及其版本号、文件大小等信息相对应的存放。在步骤M0,该浏览器根据标准文件列表,对该当前文件列表进行分析,以检查该浏览器是否出错。其中,该标准文件列表包括正确文件的特征内容。在步骤250,若该当前文件列表中有某一项或多项内容,与标准文件列表中的相应内容不匹配时,或者当该当前文件列表中缺少该标准文件列表中的某一项或多项内容时, 说明该浏览器中的相应模块出错,且该“不匹配文件”或“缺少文件”所对应的模块就是该浏览器中的已出错模块。因此,此步骤是对该浏览器中模块的正确性和完整性所作出的检查,以查找到该浏览器中的已出错模块。在步骤沈0,若该浏览器出错,则根据步骤250得到的该浏览器中的已出错模块, 该浏览器以访问网页地址方式获取与该出错内容相应的正确内容。较佳地,该获取到的内容为配置文件和/或数据文件。在本发明的一个实施例中,步骤M0、250中所述的标准文件列表除包括正确文件的特征内容之外,还包括该正确文件的下载地址。因此,步骤260可以根据该下载地址,以访问网页地址方式获取与上述出错内容相应的正确内容。在本发明的另一个实施例中,在本地预置保存正确数据目录,并根据该目录查找正确内容的下载地址。因此,步骤260根据该下载地址,获取与上述出错内容相应的正确内容。在步骤270,该浏览器将所获取到的内容直接加载到系统内存中,而不将其保存到本地,在使用该模块时直接从内存中调取相应正确内容。需要说明的是,本发明也不限于仅由浏览器来检测其自身是否出错,还可以由该浏览器的服务端来检测该浏览器是否出错,再将该检测结果发送至该浏览器,具体检测方法与上述步骤210到步骤250检测方法相同,在此不再赘述。图3是本发明一个实施例的自修复软件设备框图。该软件设备300包括第一检测模块310、获取模块320、第一修复模块330。一个例子中,该软件设备300为浏览器。该第一检测模块310用于监测该软件,并在该软件出错时查找到该软件中已出错的模块。较佳地,该第一检测模块是310是对该软件部分或全部模块的正确性和/或完整性所进行的检查。该获取模块320在该软件中的模块出错时,根据该第一检测模块310得到的该已出错模块,以访问网页地址的方式获取与出错内容相对应的正确内容。较佳地,该获取模块 320所获取到的内容是配置文件和/或数据文件。该第一修复模块330用于将所获取到的正确内容直接加载到系统内存中,而不将其保存到本地,并在使用该模块时直接从内存中调取相应正确内容。图4是本发明另一个实施例的软件自检测方法流程图。在步骤410,以访问网页地址的方式请求对所述软件进行检测。在步骤420,在检测到该软件中的模块出错时,对相应出错部分进行修复。由于本实施例能够对软件进行自检测,而无需人工来检查,因此能够更加及时准确地发现错误,用户体验更佳。需要说明的是,本发明软件可以是浏览器、聊天工具、邮箱客户端等任意一种软件设备。图5是以浏览器为例对图4软件修复方法做进一步阐述。图5是本发明另一个实施例的浏览器自检测方法流程图。需要说明的是,该浏览器可以定期(如一个星期)进行自检测,也可以在其每次被开启时进行自检测,还可以根据用户发出的检测指令进行自检测。在步骤510,该浏览器获取网页地址提供的用于检测其是否出错的分析函数。较佳地,该分析函数是url提供的javascript语言编辑得到的函数。在步骤520,该浏览器利用该分析函数检测其是否正常,且此种检测是对该浏览器部分或全部模块的正确性和/或完整性进行的检查。具体检查方法是(1)扫描与该浏览器相关的所有文件,包括配置文件和/或数据文件,且每扫描一个文件就会采用全文摘要算法提取该文件中的特征内容部分,且该特征内容能够唯一性标识该文件;(2)在该分析函数扫描完所有文件后,生成一个当前文件列表,且该当前文件列表包含每一文件的特征内容;(3)根据标准文件列表,对该当前文件列表进行分析,以检查该浏览器是否出错, 并获知该浏览器中的已出错模块;其中,该标准文件列表包括正确文件的特征内容,较佳地,还包括该正确内容的下载地址;(4)若该当前文件列表中的某一项或多项内容与标准文件列表中的相应内容不匹配,或者该当前文件列表中缺少该标准文件列表中的某一项或多项内容时,说明该浏览器出错,并根据匹配结果获知该浏览器中的已出错模块。在步骤530,在检测到该浏览器出错时,该浏览器对相应出错部分进行修复。进一步地,该浏览器以访问网页地址方式获取与出错内容相应的正确内容。更进一步地,该浏览器将所获取到的正确内容直接加载到系统内存中,而不存储到本地,并在使用该模块时直接从内存中调取相应正确内容。图6是本发明另一个实施例的自检测软件设备框图。该软件设备600包括请求检测模块610、第二检测模块620、第二修复模块630。一个例子中,该软件设备600为浏览器。
该请求检测模块610以访问网页地址方式请求对该软件进行检查。进一步地,该请求检测模块610是通过获取网页地址提供的用于检测该软件出错的分析函数来实现对该软件的检查。该第二检测模块620用于检测该软件是否正常,如果该软件异常则以访问网页地址的方式请求对该软件进行检测;或根据用户发出的检测指令,以访问网页地址的方式请求对该软件进行检测。较佳地,该第二检测模块620是对该软件部分或全部模块的正确性、 完整性进行的检查。该第二修复模块630在检测到该软件中的模块出错时,对相应出错部分进行修
Μ. ο进一步地,该第二修复模块630以访问网页地址的方式获取与所述出错内容相对应正确内容,以便对该出错部分进行修复。更进一步地,该第二修复模块630将所获取到的内容直接加载到系统内存中而保存到本地,并在使用该模块时直接从内存中调取该正确内容。需要说明的是,本发明并未被限定在仅用于PC(个人计算机)中,也可以用于 PM(掌上电脑)、手机等各种电子设备中。并且,本发明的信息发送方式即可以是有线的也可以是无线的。显而易见,在不偏离本发明的真实精神和范围的前提下,在此描述的本发明可以有许多变化。因此,所有对于本领域技术人员来说显而易见的改变,都应包括在本权利要求书所涵盖的范围之内。本发明所要求保护的范围仅由所述的权利要求书进行限定。
权利要求
1.一种软件中的模块修复方法,其特征在于,包括在所述软件中的模块出错时,以访问网页地址的方式获取与出错内容相对应的正确内容;将该获取到的正确内容直接加载到系统内存中,并在使用所述模块时直接从内存中调取相应正确内容。
2.如权利要求1所述的一种软件中的模块修复方法,其特征在于,所获取到的内容为配置文件和/或数据文件。
3.如权利要求1所述的一种软件中的模块修复方法,其特征在于,包括,监测所述软件,以查找该软件中已出错的模块的步骤。
4.如权利要求3所述的一种软件中的模块修复方法,其特征在于,所述检测是对该软件部分或全部模块的正确性和/或完整性进行的检查。
5.如权利要求1所述的一种软件中的模块修复方法,其特征在于,所述检测步骤包括扫描与该软件相关文件的步骤。
6.如权利要求5所述的一种软件中的模块修复方法,其特征在于,所述扫描步骤包括提取所述文件中的特征内容部分,并生成当前文件列表的步骤。
7.如权利要求6所述的一种软件中的模块修复方法,其特征在于,所述提取特征内容部分所采用的方法是全文摘要算法。
8.如权利要求6所述的一种软件中的模块修复方法,其特征在于,包括根据标准文件列表对所述当前文件列表进行分析的步骤。
9.如权利要求8所述的一种软件中的模块修复方法,其特征在于,所述分析的步骤包括,将该当前文件列表与标准文件列表进行匹配,并在该当前文件列表中某一项或多项内容与标准文件列表中的相应内容不匹配时,判定该软件出错。
10.如权利要求8所述的一种软件中的模块修复方法,其特征在于,所述分析的步骤包括,将该当前文件列表与标准文件列表进行匹配,并在该当前文件列表缺少该标准文件列表中的某一项或多项内容时,判定该软件出错的步骤。
11.如权利要求8所述的一种软件中的模块修复方法,其特征在于,所述标准文件列表包括正确文件的特征内容部分,以及包括该正确文件的下载地址,且该地址是所述访问网页的地址。
12.如权利要求1所述的一种软件中的模块修复方法,其特征在于,在本地预置保存正确数据目录,并根据该目录查找所述正确内容的下载地址,且该地址是所述访问网页的地址。
13.一种软件中的模块修复方法,其特征在于,包括 以访问网页地址的方式请求对所述软件进行检测;在检测到该软件中的模块出错时,对相应出错部分进行修复。
14.如权利要求13所述的一种软件中的模块修复方法,其特征在于,所述请求检测步骤包括获取网页地址提供的用于检测该软件出错的分析函数; 利用该分析函数监测该软件。
15.如权利要求13所述的一种软件中的模块修复方法,其特征在于,在所述以访问网页地址的方式请求对所述软件进行检测之前还包括检测所述软件是否正常,如果所述软件异常则以访问网页地址的方式请求对所述软件进行检测;或根据用户发出的检测指令,以访问网页地址的方式请求对所述软件进行检测。
16.如权利要求13所述的一种软件中的模块修复方法,其特征在于,所述检测是对该软件部分或全部模块的正确性和/或完整性进行的检查。
17.如权利要求13所述的一种软件中的模块修复方法,其特征在于,所述检测步骤包括扫描与该软件相关文件的步骤。
18.如权利要求17所述的一种软件中的模块修复方法,其特征在于,所述扫描步骤包括提取所述文件中的特征内容并生成当前文件列表的步骤。
19.如权利要求18所述的一种软件中的模块修复方法,其特征在于,所述提取特征内容部分所采用的方法是全文摘要算法。
20.如权利要求19所述的一种软件中的模块修复方法,其特征在于,包括根据标准文件列表对所述当前文件列表进行分析的步骤。
21.如权利要求20所述的一种软件中的模块修复方法,其特征在于,所述分析的步骤包括,将该当前文件列表与标准文件列表进行匹配,并在该当前文件列表中某一项或多项内容与标准文件列表中的相应内容不匹配时,判定该软件出错。
22.如权利要求13所述的一种软件中的模块修复方法,其特征在于,所述修复的步骤包括获取与所述出错内容相对应正确内容的步骤。
23.如权利要求22所述的一种软件中的模块修复方法,其特征在于,所述修复的步骤包括以访问网页地址的方式获取所述正确内容。
24.如权利要求21所述的一种软件中的模块修复方法,其特征在于,所获取到的内容为配置文件和/或数据文件。
25.一种软件设备,其特征在于,包括获取模块,在所述软件中的模块出错时,以访问网页地址的方式获取与出错内容相对应的正确内容;第一修复模块,将所获取到的正确内容直接加载到系统内存中,并在使用所述模块时直接从内存中调取相应正确内容。
26.如权利要求25所述的一种软件设备,其特征在于,包括第一检测模块,该第一检测模块用于监测所述软件,以查找该软件中已出错的模块。
27.如权利要求沈所述的一种软件设备,其特征在于,所述第一检测模块是对该软件部分或全部模块的正确性和/或完整性所进行的检查。
28.一种软件设备,其特征在于,包括请求检测模块,以访问网页地址的方式请求对所述软件进行检查;第二修复模块,在检测到该软件中的模块出错时,对相应出错部分进行修复。
29.如权利要求观所述的一种软件设备,其特征在于,所述请求检测模块还用于获取网页地址提供的用于检测该软件出错的分析函数,并利用该分析函数监测软件错误。
30.如权利要求观所述的一种软件设备,其特征在于,包括第二检测模块,该第二检测模块用于检测该软件是否正常,如果软件异常则以访问网页地址的方式请求对所述软件进行检测;或根据用户发出的检测指令,以访问网页地址的方式请求对所述软件进行检测。
31.如权利要求30所述的一种软件设备,其特征在于,所述第二检测模块是对该软件部分或全部模块的正确性和/或完整性进行的检查。
32.如权利要求观所述的一种软件设备,其特征在于,所述第二修复模块包括以访问网页地址的方式获取与所述出错内容相对应正确内容的子模块。
全文摘要
本发明涉及一种软件中的模块修复方法及该软件设备。该方法在该软件中的模块出错时,以访问网页地址的方式获取与出错内容相对应的正确内容。然后再将该获取到的正确内容直接加载到系统内存中,并在使用该模块时直接从内存中调取相应正确内容。本发明方法使软件具有自修复功能,并能使软件具有自检测功能,其能够应用于任意一种软件设备中。
文档编号G06F11/00GK102436402SQ20111007646
公开日2012年5月2日 申请日期2011年3月29日 优先权日2011年3月29日
发明者李宝生, 陶伟华, 马远真 申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1