DebugTrace 使用说明:[Ver. 0.9]
首先申明一下,贴这个贴子的目的之一是王婆卖瓜似的推销自己做的东东;另外一个目的呢就是希望和大家交流一下调试的技巧。:P 软件请到这里下载http://go6.163.com/spring22/html/debugtrace.htm 具体的说明在zip包内。为了能够跟踪用户需求,以及反映bug,请下载的用户发一个mail到luon@hotmail.com,也算是对我的一个鼓励吧。实在不行的话,在这下面签个到留下你的mail地址,谢谢
[概述]
本品一共包含如下所示4个文件:DebugTrace.DLL, DebugTrace.h, DebugTrace.LIB和LogTrace.ini。
其作用分别如下:
DebugTrace.DLL DLL产品,提供DebugTrace函数库。
DebugTrace.h C/C++头文件,申明接口函数定义。
DebugTrace.LIB 与DebugTrace.DLL相匹配的开发库。
LogTrace.ini 开发库的响应配置文件。
[DebugTrace接口]
。 DebugTraceD
该函数用于将程序内部的数据打印到的相应目的地上。基本的使用方法同C语言的printf函数。无需声明缓冲区即可以将变量打印到相应目的地,包括Debug控制台,debug window,LOG文件,以及windows 事件纪录[本版本暂时未实现]。具体与LogTrace.ini文件内的配置有关。
例:
DebugTraceD("Main thraedID is:0x%08x",GetCurrentThreadId());
输出结果是:
Main thraedID is:0x%08x000000e3
 TraceDataD
该函数用于将一段连续内存内的数据以16进制以及ASCII码两种形式打印到相应目的地,包括Debug控制台,debug window,LOG文件,以及windows 事件纪录[本版本暂时未实现]。具体与LogTrace.ini文件内的配置有关。
例:
TraceDataD(byData,100);
输出结果是:
00 00 00 00 00 00 00 00 00 00 0a 00 00 00 00 00 ...............
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
00 00 00 00 00 00 00 00 00 00 00 00 21 00 00 00 ...........!...
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
00 00 00 00 ....
。TraceStamp
该函数根据LogTrace.ini文件内的配置,将一组标签打印到相应的目的地。具体内容参见LogTrace.ini文件的相应说明。
注:为了方便起见,本品已经在DebugTrace.h文件内部定义好了相应的宏,一般情况下,只需要使用TraceData,DebugTrace即可。这样在每次Trace的时候stamp会自动添加到每个tarce纪录的头部。
[使用方法]
。将LogTrace.ini文件copy到windows的系统目录里面。
。将DebugTrace.DLL文件copy到调试程序可以找到的目录。可以是当前目录,或者系统目录或者path目录。
。在程序里面,包含DebugTrace.h文件。
。添加连接库DebugTrace.lib。
相关贴子:
http://www.csdn.net/develop/article/10/10016.shtm