CN105068881A - 一种修复应用程序运行异常的方法、装置和系统 - Google Patents

一种修复应用程序运行异常的方法、装置和系统 Download PDF

Info

Publication number
CN105068881A
CN105068881A CN201510512679.7A CN201510512679A CN105068881A CN 105068881 A CN105068881 A CN 105068881A CN 201510512679 A CN201510512679 A CN 201510512679A CN 105068881 A CN105068881 A CN 105068881A
Authority
CN
China
Prior art keywords
application program
operation exception
solution
report window
monitoring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510512679.7A
Other languages
English (en)
Inventor
葛山
傅彤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510512679.7A priority Critical patent/CN105068881A/zh
Publication of CN105068881A publication Critical patent/CN105068881A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种修复应用程序运行异常的方法、装置和系统。方法包括:监控应用程序是否发生运行异常事件;当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。本发明的技术方案取得了在应用程序启动或使用中发生运行异常事件时,不需要用户根据运行异常信息自行去网络搜索或求助他人获得解决方案并手动安装或更改设置,便可以自动解决运行异常事件的有益效果,解决了现有技术中需要用户手动或借助专业技术人员解决应用程序运行异常的问题,减少了问题解决的时间,极大地提高了用户迫切希望利用应用程序进行工作或娱乐的体验。

Description

一种修复应用程序运行异常的方法、装置和系统
技术领域
本发明涉及计算机技术领域,特别涉及一种修复应用程序运行异常的方法、装置和系统。
背景技术
随着计算机技术的发展,开发者在开发应用程序时所使用的开发工具也越来越多样化,很多开发环境也由旧版本更新至新版本。而考虑到用户在安装系统或安装其他软件时通常已经配置了应用程序正常运行所需的环境,开发者向用户提供应用程序时,不一定会提供环境配置的安装包。但是许多开发时间较早的应用程序所需的环境配置未必会在用户使用的机器上得到安装,以及存在用户精简了操作系统中的某些环境配置等情况,导致在用户在使用应用程序时可能出现应用程序运行异常的问题。
例如,用户在启动或使用应用程序(如游戏)时,应用程序运行异常弹出窗口,此时用户需要根据运行异常窗口中的信息自行去网上搜索或求助他人解决问题,而此时用户迫切使用应用程序进行工作或娱乐的心情遭到了极大的破坏。在解决应用程序运行异常的过程中,需要进行文件的安装或设置的更改,由人工进行操作,非常繁琐。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的修复应用程序运行异常的方法、装置和系统。
依据本发明的一个方面,提供了一种修复应用程序运行异常的方法,包括:
监控应用程序是否发生运行异常事件;
当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;
根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
可选地,所述监控应用程序是否发生运行异常事件包括:
监控所述应用程序是否弹出运行异常报告窗口。
可选地,所述监控所述应用程序是否弹出运行异常报告窗口包括:
遍历当前桌面所有的窗口;
根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;
如果存在,则监控到所述应用程序弹出运行异常报告窗口。
可选地,所述监控所述应用程序是否弹出运行异常报告窗口包括:
通过设置钩子程序来获取所述应用程序弹出的运行异常报告窗口;
当设置的所述钩子程序获取到所述应用程序弹出的运行异常报告窗口时,确定监控到所述应用程序弹出了运行异常报告窗口。
可选地,所述当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案包括:
当监控到所述应用程序弹出运行异常报告窗口时,分析该运行异常报告窗口中的内容特征,根据该内容特征获取解决该应用程序的运行异常事件的解决方案。
可选地,根据该内容特征获取解决该应用程序的运行异常事件的解决方案包括:
将该内容特征发送给指定服务器,接收该指定服务器返回的解决该应用程序的运行异常事件的解决方案。
可选地,根据所获取到的解决方案执行相应的操作包括:
从指定服务器下载所述解决方案指定的相关安装包,并进行安装。
可选地,该方法进一步包括:
当监控到所述应用程序发生运行异常事件时,弹出是否进行修复的提示信息;
当用户选择进行修复时,执行所述获取解决该应用程序的运行异常事件的解决方案的步骤。
可选地,该方法进一步包括:
根据所获取到的解决方案执行相应的操作后,弹出修复成功的提示信息。
依据本发明的另一方面,提供了一种修复应用程序运行异常的装置,包括:
监控单元,适于监控应用程序是否发生运行异常事件;
执行单元,适于当监控单元监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;以及根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
可选地,所述监控单元,适于监控所述应用程序是否弹出运行异常报告窗口。
可选地,所述监控单元,适于遍历当前桌面所有的窗口;根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;如果存在,则监控到所述应用程序弹出运行异常报告窗口。
可选地,所述监控单元,适于通过设置钩子程序来获取所述应用程序弹出的运行异常报告窗口;当设置的所述钩子程序获取到所述应用程序弹出的运行异常报告窗口时,确定监控到所述应用程序弹出了运行异常报告窗口。
可选地,所述执行单元,适于当监控到所述应用程序弹出运行异常报告窗口时,分析该运行异常报告窗口中的内容特征,根据该内容特征获取解决该应用程序的运行异常事件的解决方案。
可选地,所述执行单元,适于将该内容特征发送给指定服务器,接收该指定服务器返回的解决该应用程序的运行异常事件的解决方案。
可选地,所述执行单元,适于从指定服务器下载所述解决方案指定的相关安装包,并进行安装。
可选地,该装置进一步包括:
提示单元,适于当监控到所述应用程序发生运行异常事件时,弹出是否进行修复的提示信息;当用户选择进行修复时,执行所述获取解决该应用程序的运行异常事件的解决方案的步骤。
可选地,该装置进一步包括:
提示单元,适于根据所获取到的解决方案执行相应的操作后,弹出修复成功的提示信息。
依据本发明的又一方面,提供了一种修复应用程序运行异常的系统,包上述任一项所述的装置,以及指定服务器;
所述指定服务器包括解决方案数据库;
所述解决方案数据库,适于存储应用程序运行异常事件的解决方案。
可选地,所述解决方案数据库,适于对应存储所述应用程序运行异常事件的内容特征以及所述应用程序的运行异常事件的解决方案;以及存储各解决方案指定的相关安装包。
本发明的修复应用程序运行异常的方法,通过监控应用程序是否有运行异常事件发生,当监控到应用程序发生了运行异常事件时,获取解决该应用程序的运行异常事件的解决方案,并根据所获取到的解决方案执行相应的操作修复该应用程序的运行异常,取得了在应用程序启动或使用中发生运行异常事件时,不需要用户根据运行异常信息自行去网络搜索或求助他人获得解决方案并手动安装或更改设置,便可以自动解决运行异常事件的有益效果,解决了现有技术中需要用户手动或借助专业技术人员解决应用程序运行异常的问题,减少了问题解决的时间,极大地提高了用户迫切希望利用应用程序进行工作或娱乐的体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明一个实施例提供的一种修复应用程序运行异常的方法的流程图;
图2示出了本发明一个实施例提供的一种修复应用程序运行异常的装置的结构图;
图3示出了本发明一个实施例提供的一种修复应用程序运行异常的系统的结构图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了本发明一个实施例提供的一种修复应用程序运行异常的方法的流程图,如图1所示,该方法包括:
步骤S110,监控应用程序是否发生运行异常事件。
在应用程序的启动时和使用过程中,都可能会有运行异常事件的发生。这里的运行异常事件主要指由于运行环境缺少必要的配置或者设置,例如缺少应用程序需要调用的文件或需要调用的文件路径设置错误。
步骤S120,当监控到应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案。
对于应用程序发生的运行异常事件,一般都有普遍适用的解决方案。可以建立一个数据库存储运行异常事件的解决方案,在应用程序发生运行异常事件时从中获取该运行异常事件对应的解决方案。
步骤S130,根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
一般而言,应用程序发生运行异常事件是因为本地运行环境配置缺少某些文件。对应地安装应用程序所需的文件便可修复该应用程序的运行异常。
图1所示的方法,在应用程序启动或使用中发生运行异常事件时,不需要用户根据运行异常信息自行去网络搜索或求助他人获得解决方案并手动安装或设置更改,便可以自动解决运行异常事件的有益效果,解决了现有技术中需要用户手动或借助专业技术人员解决应用程序运行异常的问题,减少了问题解决的时间,极大地提高了用户迫切希望利用应用程序进行工作或娱乐的体验。
在本发明的一个实施例中,图1所示的方法中,监控应用程序是否发生运行异常事件包括:监控所述应用程序是否弹出运行异常报告窗口。
应用程序在发生运行异常事件时,一般会弹出异常报告窗口提示用户该应用程序停止工作,以及提示应用程序运行异常的原因,以便用户进行修复。所以监控所述应用程序是否弹出运行异常报告窗口是监控应用程序是否发生运行异常事件的一种有效的方式。
在本发明的一个实施例中,上述方法中,监控所述应用程序是否弹出运行异常报告窗口包括:遍历当前桌面所有的窗口;根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;如果存在,则监控到所述应用程序弹出运行异常报告窗口。
如果应用程序的开发者与监控方法的实施者相同时,很容易对自己开发的应用程序进行监控;但如果应用程序的开发者与监控方法的实施者不同时,由于应用程序具有安全保护措施,直接从中获取其运行异常报告窗口较为麻烦。本实施例提供了在应用程序的开发者与监控方法的实施者不同时的一种解决方法。
在视窗化的操作系统如Windows系统中,应用程序可以以窗口化的形式进行展现,此时窗口会包含一定的属性信息,而运行异常报告窗口所具有的属性信息是可以预知的,因此,遍历当前桌面所有窗口,通过对运行异常报告窗口具有的属性信息与各个窗口的属性信息进行匹配,当匹配成功时便可以确定监控到应用程序弹出了运行异常报告窗口。
在本发明的一个实施例中,上述方法中,监控所述应用程序是否弹出运行异常报告窗口括:通过设置钩子程序来获取应用程序弹出的运行异常报告窗口;当设置的所述钩子程序获取到应用程序弹出的运行异常报告窗口时,确定监控到应用程序弹出了运行异常报告窗口。
可以在应用程序中注入dll(动态链接库)文件来获取应用程序弹出的运行异常报告窗口,此种方法在dll文件与应用程序为同一开发者时容易进行实施,因为一般的应用程序为安全考虑会进行dll注入保护。在本实施例中,如果成功注入dll文件到应用程序中,便可以更轻松地通过dll文件设置钩子程序来获取应用程序弹出的运行异常报告窗口。
在本发明的一个实施例中,图1所示的方法中,当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案包括:
当监控到应用程序弹出运行异常报告窗口时,分析该运行异常报告窗口中的内容特征,根据该内容特征获取解决该应用程序的运行异常事件的解决方案。
应用程序弹出的异常报告窗口中的内容特征虽然多样化,但通常可以预知并进行分类。例如,内容特征可以为:应用程序无法正常启动,缺少xxx.dll文件;未安装.netframwork服务;Runtimeerror:缺少必要的MicrosoftVC组件等。对类似的内容特征,都可以对应地预先存储解决方案。例如,当内容特征为未安装.netframwork服务时,只需依据相应的解决方案下载安装.netframwork服务即可。
在本发明的一个实施例中,上述方法中,根据该内容特征获取解决该应用程序的运行异常事件的解决方案包括:将该内容特征发送给指定服务器,接收该指定服务器返回的解决该应用程序的运行异常事件的解决方案。
应用程序运行异常事件的种类和解决方案虽然可以预知其类型,但相应的解决方案及解决方案所需的资源很多,并不需要存储在用户机器上占用用户的存储空间。将解决方案存储于指定服务器中,在应用程序发生运行异常事件时只需将该内容特征发送给指定服务器即可,即只有在问题产生时才需要执行操作,节约了用户的资源。
在本发明的一个实施例中,图1所示的方法中,根据所获取到的解决方案执行相应的操作包括:从指定服务器下载所述解决方案指定的相关安装包,并进行安装。
一般而言,应用程序发生运行异常事件是因为本地运行环境配置缺少某些文件。对应地安装应用程序所需的文件便可修复该应用程序的运行异常。如下载Direcx9.0c安装包,即可解决应用程序因缺少该安装包中包含的dll文件而发生的运行异常事件。
在本发明的一个实施例中,图1所示的方法中,该方法进一步包括:
当监控到所述应用程序发生运行异常事件时,弹出是否进行修复的提示信息;
当用户选择进行修复时,执行所述获取解决该应用程序的运行异常事件的解决方案的步骤。
一般地,应用程序在发生运行异常事件时,会弹出异常报告窗口提示用户该应用程序停止工作,以及提示应用程序运行异常的原因,以便用户进行修复,但会降低用户体验。本发明的实施例可以选择对异常报告窗口进行拦截,而呈现形如“因缺少xxx.dll文件,您的应用程序无法正常运行,是否选择一键修复该问题?”的提示信息,当用户选择进行修复时,执行上述获取解决该应用程序的运行异常事件的解决方案的步骤。从而既提示了用户应用程序发生了运行异常事件,又同时提供了该事件的解决方案,极大地提升了用户体验。
在本发明的一个实施例中,图1所示的方法中,该方法进一步包括:
根据所获取到的解决方案执行相应的操作后,弹出修复成功的提示信息。
此时可提示用户修复成功,由用户手动重新进行应用程序的启动;也可以设置为提示用户修复成功,在几秒内自动重启应用程序。这是考虑到运行异常事件的修复时间不同,用户在修复完成时可能由于修复时间过长遗忘了应用程序正在修复,干扰了其正在进行的其他工作。为用户提供多种选择和提示,提高了用户体验。
图2示出了一种修复应用程序运行异常的装置的结构图,如图2所示,修复应用程序运行异常的装置200包括:
监控单元210,适于监控应用程序是否发生运行异常事件。
在应用程序的启动时和使用过程中,都可能会有运行异常事件的发生。这里的运行异常事件主要指由于运行环境缺少必要的配置或者设置,例如缺少应用程序需要调用的文件或需要调用的文件路径设置错误。
执行单元220,适于当监控单元监控到应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;以及根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
对于应用程序发生的运行异常事件,一般都有普遍适用的解决方案。可以建立一个数据库存储运行异常事件的解决方案,在应用程序发生运行异常事件时从中获取该运行异常事件对应的解决方案。一般而言,应用程序发生运行异常事件是因为本地运行环境配置缺少某些文件。对应地安装应用程序所需的文件便可修复该应用程序的运行异常。
图2所示的装置,在应用程序启动或使用中发生运行异常事件时,不需要用户根据运行异常信息自行去网络搜索或求助他人获得解决方案并手动安装或更改设置,便可以自动解决运行异常事件的有益效果,解决了现有技术中需要用户手动或借助专业技术人员解决应用程序运行异常的问题,减少了问题解决的时间,极大地提高了用户迫切希望利用应用程序进行工作或娱乐的体验。。
在本发明的一个实施例中,图2所示的装置中,监控单元210,适于监控应用程序是否弹出运行异常报告窗口。
应用程序在发生运行异常事件时,一般会弹出异常报告窗口提示用户该应用程序停止工作,以及提示应用程序运行异常的原因,以便用户进行修复。所以监控所述应用程序是否弹出运行异常报告窗口是监控应用程序是否发生运行异常事件的一种简便有效的方式。
在本发明的又一个实施例中,上述装置中,监控单元210,适于遍历当前桌面所有的窗口;根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;如果存在,则监控到应用程序弹出运行异常报告窗口。
如果应用程序的开发者与监控单元的开发者相同时,很容易对应用程序进行监控;但如果应用程序的开发者与监控单元的开发者不同时,由于应用程序具有安全保护措施,直接从中获取其运行异常报告窗口较为麻烦。本实施例提供了一种在应用程序的开发者与监控单元的开发者不同时监控单元的工作原理。
在视窗化的操作系统如Windows系统中,应用程序可以以窗口化的形式进行展现,此时窗口会包含一定的属性信息,而运行异常报告窗口所具有的属性信息是可以预知的,因此,监控单元210遍历当前桌面所有窗口,通过对运行异常报告窗口具有的属性信息与各个窗口的属性信息进行匹配,当匹配成功时便可以确定监控到应用程序弹出了运行异常报告窗口。
在本发明的又一个实施例中,上述装置中,监控单元210,适于通过设置钩子程序来获取应用程序弹出的运行异常报告窗口;当设置的钩子程序获取到应用程序弹出的运行异常报告窗口时,确定监控到应用程序弹出了运行异常报告窗口。
可以在应用程序中注入dll(动态链接库)文件来获取应用程序弹出的运行异常报告窗口,此种方法在dll文件与应用程序为同一开发者时容易进行实施,因为一般的应用程序为安全考虑会进行dll注入保护。在本实施例中,如果成功注入dll文件到应用程序中,便可以更轻松地通过dll文件设置钩子程序来获取应用程序弹出的运行异常报告窗口。
在本发明的一个实施例中,图2所示的装置中,执行单元220,适于当监控到应用程序弹出运行异常报告窗口时,分析该运行异常报告窗口中的内容特征,根据该内容特征获取解决该应用程序的运行异常事件的解决方案。
应用程序弹出的异常报告窗口中的内容特征虽然多样化,但通常可以预知并进行分类。例如,内容特征可以为:应用程序无法正常启动,缺少xxx.dll文件;未安装.netframwork服务;Runtimeerror:缺少必要的MicrosoftVC组件等。对类似的内容特征,都可以对应地预先存储解决方案。例如,当内容特征为未安装.netframwork服务时,只需依据相应的解决方案下载安装.netframwork服务即可。
在本发明的一个实施例中,上述装置中,执行单元220,适于将该内容特征发送给指定服务器,接收该指定服务器返回的解决该应用程序的运行异常事件的解决方案。
应用程序运行异常事件的种类和解决方案虽然可以预知其类型,但相应的解决方案及解决方案所需的资源很多,并不需要存储在用户机器上占用用户的存储空间。将解决方案存储于指定服务器中,在应用程序发生运行异常事件时只需将该内容特征发送给指定服务器即可,即只有在问题产生时才需要执行操作,节约了用户的资源。
在本发明的一个实施例中,图2所示的装置中,执行单元220,适于从指定服务器下载解决方案指定的相关安装包,并进行安装。
一般而言,应用程序发生运行异常事件是因为本地运行环境配置缺少某些文件。对应地安装应用程序所需的文件便可修复该应用程序的运行异常。如下载Direcx9.0c安装包,即可解决应用程序因缺少该安装包中包含的dll文件而发生的运行异常事件。
在本发明的一个实施例中,图2所示的装置进一步包括:提示单元,适于当监控到应用程序发生运行异常事件时,弹出是否进行修复的提示信息;当用户选择进行修复时,执行获取解决该应用程序的运行异常事件的解决方案的步骤。
一般地,应用程序在发生运行异常事件时,会弹出异常报告窗口提示用户该应用程序停止工作,以及提示应用程序运行异常的原因,以便用户进行修复,但会降低用户体验。本发明的实施例可以选择对异常报告窗口进行拦截,而呈现形如“因缺少xxx.dll文件,您的应用程序无法正常运行,是否选择一键修复该问题?”的提示信息,当用户选择进行修复时,执行上述获取解决该应用程序的运行异常事件的解决方案的步骤。从而既提示了用户应用程序发生了运行异常事件,又同时提供了该事件的解决方案,极大地提升了用户体验。
在本发明的一个实施例中,图2所示的装置中进一步包括:提示单元,适于根据所获取到的解决方案执行相应的操作后,弹出修复成功的提示信息。
此时可提示用户修复成功,由用户手动重新进行应用程序的启动;也可以设置为提示用户修复成功,在几秒内自动重启应用程序。这是考虑到运行异常事件的修复时间不同,用户在修复完成时可能由于修复时间过长遗忘了应用程序正在修复,干扰了其正在进行的其他工作。为用户提供多种选择和提示,提高了用户体验。
图3示出了一种修复应用程序运行异常的系统的结构图,如图3所示,该系统包括修复应用程序运行异常的装置310,以及指定服务器320;
修复应用程序运行异常的装置310,可通过上述任一实施例提供的装置实现。
指定服务器320包括解决方案数据库330;
解决方案数据库330,适于存储应用程序运行异常事件的解决方案。
将存储应用程序运行异常事件的解决方案的解决方案数据库330设置于指定服务器320中,避免了在用户机器中占用大量资源存储应用程序运行异常事件的解决方案的问题,因为不是所有应用程序运行异常事件都是用户会遇见的。本实施例提供的系统取得了在应用程序启动或使用中发生运行异常事件时,可以自动解决运行异常事件的有益效果,解决了现有技术中需要用户手动或借助专业技术人员解决应用程序运行异常的问题,极大地提高了用户体验。
在本发明的一个实施例中,如图3所示的系统中,
解决方案数据库330,适于对应存储应用程序运行异常事件的内容特征以及应用程序的运行异常事件的解决方案;以及存储各解决方案指定的相关安装包。
一般而言,应用程序发生运行异常事件是因为本地运行环境配置缺少某些文件。对应地安装应用程序所需的文件便可修复该应用程序的运行异常。如此时应用程序运行异常事件的内容特征为“缺少d3dx9_43.dll文件”,则只需下载解决方案数据库330中存储的与其内容特征对应的解决方案指定的Direcx9.0c安装包进行安装即可解决该问题。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的修复应用程序运行异常的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
A1、一种修复应用程序运行异常的方法,其中,该方法包括:
监控应用程序是否发生运行异常事件;
当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;
根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
A2、如A1所述的方法,其中,所述监控应用程序是否发生运行异常事件包括:
监控所述应用程序是否弹出运行异常报告窗口。
A3、如A2所述的方法,其中,所述监控所述应用程序是否弹出运行异常报告窗口包括:
遍历当前桌面所有的窗口;
根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;
如果存在,则监控到所述应用程序弹出运行异常报告窗口。
A4、如A2所述的方法,其中,所述监控所述应用程序是否弹出运行异常报告窗口包括:
通过设置钩子程序来获取所述应用程序弹出的运行异常报告窗口;
当设置的所述钩子程序获取到所述应用程序弹出的运行异常报告窗口时,确定监控到所述应用程序弹出了运行异常报告窗口。
A5、如A1所述的方法,其中,所述当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案包括:
当监控到所述应用程序弹出运行异常报告窗口时,分析该运行异常报告窗口中的内容特征,根据该内容特征获取解决该应用程序的运行异常事件的解决方案。
A6、如A5所述的方法,其中,根据该内容特征获取解决该应用程序的运行异常事件的解决方案包括:
将该内容特征发送给指定服务器,接收该指定服务器返回的解决该应用程序的运行异常事件的解决方案。
A7、如A1所述的方法,其中,根据所获取到的解决方案执行相应的操作包括:
从指定服务器下载所述解决方案指定的相关安装包,并进行安装。
A8、如A1所述的方法,其中,该方法进一步包括:
当监控到所述应用程序发生运行异常事件时,弹出是否进行修复的提示信息;
当用户选择进行修复时,执行所述获取解决该应用程序的运行异常事件的解决方案的步骤。
A9、如A1所述的方法,其中,该方法进一步包括:
根据所获取到的解决方案执行相应的操作后,弹出修复成功的提示信息。
B10、一种修复应用程序运行异常的装置,其中,该装置包括:
监控单元,适于监控应用程序是否发生运行异常事件;
执行单元,适于当监控单元监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;以及根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
B11、如B10所述的装置,其中,
所述监控单元,适于监控所述应用程序是否弹出运行异常报告窗口。
B12、如B11所述的装置,其中,
所述监控单元,适于遍历当前桌面所有的窗口;根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;如果存在,则监控到所述应用程序弹出运行异常报告窗口。
B13、如B11所述的装置,其中,
所述监控单元,适于通过设置钩子程序来获取所述应用程序弹出的运行异常报告窗口;当设置的所述钩子程序获取到所述应用程序弹出的运行异常报告窗口时,确定监控到所述应用程序弹出了运行异常报告窗口。
B14、如B10所述的装置,其中,
所述执行单元,适于当监控到所述应用程序弹出运行异常报告窗口时,分析该运行异常报告窗口中的内容特征,根据该内容特征获取解决该应用程序的运行异常事件的解决方案。
B15、如B14所述的方法,其中,
所述执行单元,适于将该内容特征发送给指定服务器,接收该指定服务器返回的解决该应用程序的运行异常事件的解决方案。
B16、如B10所述的装置,其中,
所述执行单元,适于从指定服务器下载所述解决方案指定的相关安装包,并进行安装。
B17、如B10所述的装置,其中,该装置进一步包括:
提示单元,适于当监控到所述应用程序发生运行异常事件时,弹出是否进行修复的提示信息;当用户选择进行修复时,执行所述获取解决该应用程序的运行异常事件的解决方案的步骤。
B18、如B10所述的装置,其中,该装置进一步包括:
提示单元,适于根据所获取到的解决方案执行相应的操作后,弹出修复成功的提示信息。
C19、一种修复应用程序运行异常的系统,包括如C10-C18任一项所述的装置,以及指定服务器;
所述指定服务器包括解决方案数据库;
所述解决方案数据库,适于存储应用程序运行异常事件的解决方案。
C20、如C19所述的系统,其中,
所述解决方案数据库,适于对应存储所述应用程序运行异常事件的内容特征以及所述应用程序的运行异常事件的解决方案;以及存储各解决方案指定的相关安装包。

Claims (10)

1.一种修复应用程序运行异常的方法,其中,该方法包括:
监控应用程序是否发生运行异常事件;
当监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;
根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
2.如权利要求1所述的方法,其中,所述监控应用程序是否发生运行异常事件包括:
监控所述应用程序是否弹出运行异常报告窗口。
3.如权利要求2所述的方法,其中,所述监控所述应用程序是否弹出运行异常报告窗口包括:
遍历当前桌面所有的窗口;
根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;
如果存在,则监控到所述应用程序弹出运行异常报告窗口。
4.如权利要求2所述的方法,其中,所述监控所述应用程序是否弹出运行异常报告窗口包括:
通过设置钩子程序来获取所述应用程序弹出的运行异常报告窗口;
当设置的所述钩子程序获取到所述应用程序弹出的运行异常报告窗口时,确定监控到所述应用程序弹出了运行异常报告窗口。
5.一种修复应用程序运行异常的装置,其中,该装置包括:
监控单元,适于监控应用程序是否发生运行异常事件;
执行单元,适于当监控单元监控到所述应用程序发生运行异常事件时,获取解决该应用程序的运行异常事件的解决方案;以及根据所获取到的解决方案执行相应的操作,以修复该应用程序的运行异常。
6.如权利要求5所述的装置,其中,
所述监控单元,适于监控所述应用程序是否弹出运行异常报告窗口。
7.如权利要求6所述的装置,其中,
所述监控单元,适于遍历当前桌面所有的窗口;根据运行异常报告窗口的属性信息,确定是否存在运行异常报告窗口;如果存在,则监控到所述应用程序弹出运行异常报告窗口。
8.如权利要求6所述的装置,其中,
所述监控单元,适于通过设置钩子程序来获取所述应用程序弹出的运行异常报告窗口;当设置的所述钩子程序获取到所述应用程序弹出的运行异常报告窗口时,确定监控到所述应用程序弹出了运行异常报告窗口。
9.一种修复应用程序运行异常的系统,包括如权利要求6-8任一项所述的装置,以及指定服务器;
所述指定服务器包括解决方案数据库;
所述解决方案数据库,适于存储应用程序运行异常事件的解决方案。
10.如权利要求9所述的系统,其中,
所述解决方案数据库,适于对应存储所述应用程序运行异常事件的内容特征以及所述应用程序的运行异常事件的解决方案;以及存储各解决方案指定的相关安装包。
CN201510512679.7A 2015-08-19 2015-08-19 一种修复应用程序运行异常的方法、装置和系统 Pending CN105068881A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510512679.7A CN105068881A (zh) 2015-08-19 2015-08-19 一种修复应用程序运行异常的方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510512679.7A CN105068881A (zh) 2015-08-19 2015-08-19 一种修复应用程序运行异常的方法、装置和系统

Publications (1)

Publication Number Publication Date
CN105068881A true CN105068881A (zh) 2015-11-18

Family

ID=54498258

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510512679.7A Pending CN105068881A (zh) 2015-08-19 2015-08-19 一种修复应用程序运行异常的方法、装置和系统

Country Status (1)

Country Link
CN (1) CN105068881A (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105487980A (zh) * 2015-12-04 2016-04-13 Tcl集团股份有限公司 修复应用程序运行异常的方法及装置
CN105653454A (zh) * 2015-12-30 2016-06-08 浙江德景电子科技有限公司 一种基于android系统的应用程序异常的处理方法和处理装置
CN107491383A (zh) * 2017-08-17 2017-12-19 杭州师范大学 应用崩溃操作日志的捕获方法、装置及移动终端
CN107506647A (zh) * 2017-07-28 2017-12-22 努比亚技术有限公司 漏洞自动修复方法及移动终端
CN108196972A (zh) * 2017-12-29 2018-06-22 北京五八信息技术有限公司 一种应用软件的修复方法、装置、终端及存储介质
CN109358975A (zh) * 2018-09-28 2019-02-19 珠海市君天电子科技有限公司 一种软件运行异常的分析方法、装置、电子设备及存储介质
CN109901941A (zh) * 2018-12-15 2019-06-18 中国平安人寿保险股份有限公司 应用程序崩溃处理方法及装置、计算机装置及存储介质
CN110018918A (zh) * 2018-01-10 2019-07-16 中兴通讯股份有限公司 终端异常的修复方法、装置、移动终端及存储介质
CN110287051A (zh) * 2019-06-21 2019-09-27 四川盛趣时代网络科技有限公司 基于windows异常处理机制的主动防护方法
CN110362445A (zh) * 2019-05-28 2019-10-22 平安普惠企业管理有限公司 一种基于用户行为的监控信息反馈方法及信息反馈系统
CN110489256A (zh) * 2019-07-19 2019-11-22 珠海金山网络游戏科技有限公司 一种宕机定位修复方法及系统
CN111581005A (zh) * 2020-05-07 2020-08-25 深圳市创维软件有限公司 终端修复方法、终端和存储介质
CN112306749A (zh) * 2020-10-26 2021-02-02 珠海格力电器股份有限公司 控制系统中服务的处理方法及装置、控制系统
CN112882897A (zh) * 2021-02-24 2021-06-01 中国工商银行股份有限公司 异常场景处理方法、装置、电子设备及存储介质
CN113282307A (zh) * 2021-06-11 2021-08-20 云宏信息科技股份有限公司 ansible服务端对软件进行批量安装的方法、服务端及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6757837B1 (en) * 1999-10-19 2004-06-29 Tivo, Inc. Method and apparatus for software failure diagnosis and repair
US20040153823A1 (en) * 2003-01-17 2004-08-05 Zubair Ansari System and method for active diagnosis and self healing of software systems
CN104216997A (zh) * 2014-09-10 2014-12-17 珠海市君天电子科技有限公司 一种终端设备的修复方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6757837B1 (en) * 1999-10-19 2004-06-29 Tivo, Inc. Method and apparatus for software failure diagnosis and repair
US20040153823A1 (en) * 2003-01-17 2004-08-05 Zubair Ansari System and method for active diagnosis and self healing of software systems
CN104216997A (zh) * 2014-09-10 2014-12-17 珠海市君天电子科技有限公司 一种终端设备的修复方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
葛亮: "《零点起飞学编程 零点起飞学Visual C++》", 31 July 2013 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105487980B (zh) * 2015-12-04 2019-06-07 Tcl集团股份有限公司 修复应用程序运行异常的方法及装置
CN105487980A (zh) * 2015-12-04 2016-04-13 Tcl集团股份有限公司 修复应用程序运行异常的方法及装置
CN105653454A (zh) * 2015-12-30 2016-06-08 浙江德景电子科技有限公司 一种基于android系统的应用程序异常的处理方法和处理装置
CN107506647A (zh) * 2017-07-28 2017-12-22 努比亚技术有限公司 漏洞自动修复方法及移动终端
CN107491383A (zh) * 2017-08-17 2017-12-19 杭州师范大学 应用崩溃操作日志的捕获方法、装置及移动终端
CN108196972A (zh) * 2017-12-29 2018-06-22 北京五八信息技术有限公司 一种应用软件的修复方法、装置、终端及存储介质
CN110018918A (zh) * 2018-01-10 2019-07-16 中兴通讯股份有限公司 终端异常的修复方法、装置、移动终端及存储介质
CN110018918B (zh) * 2018-01-10 2022-01-25 中兴通讯股份有限公司 终端异常的修复方法、装置、移动终端及存储介质
CN109358975A (zh) * 2018-09-28 2019-02-19 珠海市君天电子科技有限公司 一种软件运行异常的分析方法、装置、电子设备及存储介质
CN109901941A (zh) * 2018-12-15 2019-06-18 中国平安人寿保险股份有限公司 应用程序崩溃处理方法及装置、计算机装置及存储介质
CN110362445A (zh) * 2019-05-28 2019-10-22 平安普惠企业管理有限公司 一种基于用户行为的监控信息反馈方法及信息反馈系统
CN110287051A (zh) * 2019-06-21 2019-09-27 四川盛趣时代网络科技有限公司 基于windows异常处理机制的主动防护方法
CN110489256A (zh) * 2019-07-19 2019-11-22 珠海金山网络游戏科技有限公司 一种宕机定位修复方法及系统
CN111581005A (zh) * 2020-05-07 2020-08-25 深圳市创维软件有限公司 终端修复方法、终端和存储介质
CN111581005B (zh) * 2020-05-07 2023-08-25 深圳市创维软件有限公司 终端修复方法、终端和存储介质
CN112306749A (zh) * 2020-10-26 2021-02-02 珠海格力电器股份有限公司 控制系统中服务的处理方法及装置、控制系统
CN112882897A (zh) * 2021-02-24 2021-06-01 中国工商银行股份有限公司 异常场景处理方法、装置、电子设备及存储介质
CN113282307A (zh) * 2021-06-11 2021-08-20 云宏信息科技股份有限公司 ansible服务端对软件进行批量安装的方法、服务端及系统

Similar Documents

Publication Publication Date Title
CN105068881A (zh) 一种修复应用程序运行异常的方法、装置和系统
CN110554965B (zh) 自动化模糊测试方法及相关设备、计算机可读存储介质
US9703553B2 (en) Assertions based on recently changed code
US9575739B2 (en) Performing unattended software installation
CN109408393B (zh) 应用测试方法、装置及设备和计算机可读存储介质
US9720657B2 (en) Managed assertions in an integrated development environment
US9733903B2 (en) Optimizing program performance with assertion management
CN105446775B (zh) 游戏安装包的配置化生成方法及装置
CN103677527A (zh) 适于移动终端的悬浮问题交互控件显示方法和装置
WO2015112170A1 (en) Continuous integration with reusable context aware jobs
US9542173B2 (en) Dependency handling for software extensions
CN110263546B (zh) 一种对容器镜像进行安全检查的方法、装置以及设备
CN108563472B (zh) 基于多开应用的服务插件加载方法及装置
US9817671B2 (en) Rule-based activation of behaviors in an extensible software application
US9760364B2 (en) Checks for software extensions
CN105159545A (zh) 一种测试用智能终端上的弹框处理方法和装置
CN104484176B (zh) 一种安卓系统窗口对象获取方法和装置
CN105577774B (zh) 游戏登录器的强制更新方法及装置
CN111880804A (zh) 应用程序代码的处理方法及装置
CN110895473B (zh) 一种基于安卓移动设备的自启动保活系统及方法
CN112379973B (zh) 重载方法和装置
CN104699618A (zh) 指定用户对高权限进程自动化测试的方法及装置
CN114398155A (zh) 一种应用程序自动化部署流水线配置方法及系统
US9477447B1 (en) Semantic representations of software extensions
CN116107665B (zh) 工程项目配置方法、装置、终端和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20151118

RJ01 Rejection of invention patent application after publication