[发明专利]基于Windows消息机制的软件调试方法无效
申请号: | 201210515389.4 | 申请日: | 2012-12-05 |
公开(公告)号: | CN103019935A | 公开(公告)日: | 2013-04-03 |
发明(设计)人: | 付纯鹤;罗杨 | 申请(专利权)人: | 中国电子科技集团公司第四十五研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京中建联合知识产权代理事务所 11004 | 代理人: | 朱丽岩;刘湘舟 |
地址: | 100176 北京市大*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 windows 消息 机制 软件 调试 方法 | ||
技术领域
本发明涉及Windows消息机制领域,特别是一种基于Windows消息机制的软件调试的方法。
背景技术
调试程序是软件编写过程中极为重要的一个环节。在调试程序时,通常会使用AfxMessageBox()弹出消息框来显示调试信息。这种方式虽然方便,但会打断待调试程序的运行。另外,若消息框侵占了待调试程序的窗口画面,一旦消息框结束,系统会对待调试程序的窗口发出原本不必要的WM_PAINT消息, 同时OnDraw()或OnPaint()函数会被调用,使得调试程序整个过程变得繁琐,运用起来很不方便。如果消息框正是放在OnDraw()或OnPaint()两个函数中,程序调试就会陷入死循环中。
发明内容
本发明的目的是提供一种基于Windows消息机制的软件调试方法,要解决背景技术中存在的调试程序时遇到的技术问题,特别是调试程序过程中如何不干扰被调试程序的窗口画面问题。
为实现上述目的,本发明采用如下技术方案:
一种基于Windows消息机制的软件调试方法,步骤如下:
步骤1:在待调试程序中需要调试的代码行插入一个调试信息;所述待调试程序为消息发送端
步骤2:启动待调试程序,调用步骤1中插入的调试信息,经Window消息队列将消息发送至信息调试器;
步骤3:启动信息调试器,所述信息调试器为消息接收端;
步骤4:直接运行待调试程序,测试需要获取调试信息的部分;
步骤5:关闭待调试程序;
步骤6:激活信息调试器,用于显示待调试程序运行过程中发送来的调试信息;
步骤7:根据上述记录的信息,分析待调试程序存在的问题;
步骤8:根据上述待调试程序存在的问题,修改待调试程序的相关代码;
步骤9:重复步骤4到步骤8的工作,直到待调试程序的所有代码调试结束。
所述调试信息是一个全局函数,上述全局函数的代码是固定不变的,直接插入待调试程序后调用即可;
所述Window消息队列采用Windows的 WM_COPYDATA消息实现消息发送端和消息接收端之间的通信。
所述信息调试器是一个可执行文件,用于显示、保存、删除收到的调试信息内容及收到调试信息内容时间;将上述调试信息的内容保存为文本文件并通过窗口界面显示。
所述消息发送端和消息接收端通过Window消息队列传递调试信息;所述待调试程序经Window消息队列发送消息至信息调试器,所述Window消息队列,用于将消息发送至信息调试器中,所述信息调试器,用于分析并显示调试信息,并通过Window消息队列查询消息信息
与现有技术相比本发明具有以下特点和有益效果:
本发明针对使用AfxMessageBox()显示调试信息的不足,改进了显示调试信息的方法,既能方便的调试程序,又不影响程序的执行,特别是调试程序过程中不会干扰到待调试程序的窗口画面。
本发明可以在独立窗口显示所有的调试信息,在待调试程序崩溃时仍能保留待调试程序的运行信息记录,适用于大型多模块多线程复杂软件系统的单元调试、整体调试等过程,能应用于基于Win32API的Windows平台下的软件开发过程中,为程序的调试提供了极大的方便。
附图说明
下面结合附图对本发明做进一步详细的说明。
图1是本发明的调试方法的使用流程图。
图2是本发明的信息调试器模块示意图。
图3是本发明的消息发送端与消息接收端之间通信的程序流程图。
图4是本发明的消息接收端界面窗口图。
图5是本发明的保存调试信息的文本文件窗口图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实例,并参照附图,对本发明进一步详细说明。
参见图1所示,这种基于Windows消息机制的软件调试方法,步骤如下:
步骤1:在待调试程序中需要调试的代码行插入一个调试信息;所述待调试程序为消息发送端;所述调试信息是一个全局函数,可以方便的插入到任何需要调试的程序中,上述全局函数的代码是固定不变的,直接插入待调试程序后调用即可;所述调试信息都可以设定一个消息ID号,该消息ID号是一个范围在–32768 到 32767之间的整数,可根据需要任意设定,用来标定不同代码行发送的消息或对调试信息进行分类区别,便于在信息调试器中对消息进行检索。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第四十五研究所,未经中国电子科技集团公司第四十五研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210515389.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:叶点霉发酵液中蒽醌类物质的提取
- 下一篇:一种黄芩苷烟用香料的制备方法