用Poseidon 调试 DFL

原文: http://kuan.iteye.com/blog/192447

首先要和大家说明,我自己本身并没有使用调试器的习惯,所以希望针对这个部份大家可以尽量提出您的意见.

我们先以一个项目做范例,假设我们使用DFL中的一个范例: toolbar.d及toolbar.res; 在这之前,我们必须先编译好dfl.lib及dfl_debug.lib库文件.(可以参考http:/ /kuan.iteye.com/blog/189115来建立库).

1.进入Tools --> Options --> Compiler & Debugger --> 设定Debugger的位置,在这里建议使用Ddbg V0.11.3版.

2.新建项目,把toolbar.d及toolbar.res加入项目,进入档案属性 (Project Property) 的Compiler Options中将[-g] [-debug] [-L/SUBSYSTEM] 选项打勾.

3.选定编译时连结DFL的调试库(dfl_debug.lib),或者是在toolbar.d中加入:
Java代码 
1. <SPAN onmouseover=_tipon(this) onmouseout=_tipoff()><SPAN class=google-src-text style="DIRECTION: ltr; TEXT-ALIGN: left">debug  {    pragma( lib, "dfl_debug.lib" );  }  else  {    pragma( lib, "dfl.lib" );  }</SPAN> debug { pragma( lib, "dfl_debug.lib" ); } else { pragma( lib, "dfl.lib" ); }</SPAN>  


4.按下Rebuild All编译生成可执行文件(exe),因为项目属性中选择 [-g], 所以此可执行文件会含有调试信息.

5.按下Debug --> Run Debugger, 此时会出现debug窗口:
用Poseidon 调试 DFL_第1张图片

6.开启toolbar.d文件,设定调试点(CTRL+鼠标左键): (断点,译)
用Poseidon 调试 DFL_第2张图片

7.按下Debug --> Run/Resume开始调试.
用Poseidon 调试 DFL_第3张图片
上图中,左边的窗口是Stack Frame,目前的Frame是以粗斜体来表示;右边是变量窗口,右上方的Link按钮若是按下的状态,窗口的内容会随着调试的每一个step自动更新,另外右边的Refresh按钮则是立即更新.

8.另外我们可以在Output窗口观看调试器输出的信息:
用Poseidon 调试 DFL_第4张图片

9.我们也可以直接在Output窗口的命令列直接输入指令: (?,译)
用Poseidon 调试 DFL_第5张图片

10.除了在Variables窗口观看变量外,我们也可以把鼠标移到变量上面停止不动,此时会显示变量的内容(有时会失灵......)
用Poseidon 调试 DFL_第6张图片

11.欲结束调试,只要按下Debug --> Stop即可.

12.有时库文件的跳跃似乎不太灵光,我会想办法解决的.....

你可能感兴趣的:(Blog)