[发明专利]一种基于窗口平台的应用程序监控方法无效
申请号: | 200810057072.4 | 申请日: | 2008-01-29 |
公开(公告)号: | CN101227630A | 公开(公告)日: | 2008-07-23 |
发明(设计)人: | 刘少情 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | H04Q3/00 | 分类号: | H04Q3/00;H04L12/24;H04M3/22 |
代理公司: | 北京汇泽知识产权代理有限公司 | 代理人: | 张颖玲;王黎延 |
地址: | 518057广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 窗口 平台 应用程序 监控 方法 | ||
1.一种基于窗口平台的应用程序监控方法,其特征在于,该方法包括:
a、监控程序启动后,根据配置文件中被监控应用程序的配置信息分别创建被监控应用程序进程;
b、所述被监控应用程序进程创建成功后,监控程序将注入动态链接库DLL的代码注入所述创建成功的进程;
c、注入DLL修改所述创建成功进程中的消息分发函数代码;
d、监控程序定时向所有的被监控应用程序发送握手消息,被监控应用程序收到消息后,调用步骤c所述修改后的消息分发函数,所述修改后的消息分发函数确定收到消息为监控程序发送的握手消息时,向监控程序返回应答消息。
2.根据权利要求1所述的方法,其特征在于,所述配置文件中的应用程序配置信息至少包括:应用程序的路径、应用程序最大应答超时次数和发送握手消息频率。
3.根据权利要求1所述的方法,其特征在于,步骤b所述将注入DLL的代码注入进程为:在进程中创建一个入口函数为DLL加载函数、参数为注入DLL名称的线程并执行。
4.根据权利要求1所述的方法,其特征在于,所述DLL修改系统消息分发函数代码包括:
c1、设置与消息分发函数参数类型和返回类型相同的函数指针x,为所设置的指针申请内存;
c2、设置函数y,所设置函数的参数类型和返回类型与消息分发函数相同;
c3、将消息分发函数代码的前五个字节拷贝到指针x所指向内存的前五个字节,并修改消息分发函数代码的第一个字节为跳转JMP指令,后四个字节为跳转到函数y的字节数;
c4、将指针x所指向内存的第六个字节修改为JMP指令,其后四个字节为跳转到消息分发函数第六个字节的字节数。
5.根据权利要求4所述的方法,其特征在于,步骤c2所述函数y,用于判断被监控应用程序进程收到的消息是否为监控程序发送的握手消息,如果是,则向监控程序返回应答信息后调用指针x;否则直接调用指针x。
6.根据权利要求2所述的方法,其特征在于,设置应答时间阈值,如果监控程序发出握手消息后在应答时间阈值内未收到应答消息,则应答超时;当所述被监控应用程序应答超时次数大于应用程序最大应答超时次数时,监控程序重启所述被监控应用程序进程及其相关应用程序进程。
7.根据权利要求6所述的方法,其特征在于,所述重启被监控应用程序之前,该方法进一步包括:监控程序结束所述被监控应用程序进程。
8.根据权利要求6所述的方法,其特征在于,设置超时次数阈值,该方法进一步包括:所有被监控应用程序重启次数超过设定的超时次数阈值时,重启服务器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810057072.4/1.html,转载请声明来源钻瓜专利网。