Delphi 调试方法
2004-03-29 14:30
357 查看
以下内容是个人在使用中的总结,不足之处还望指正。 第一种是堆栈。快捷键是Ctrl+Alt+S 比如过程A和B都调用了过程C,或者不只如此,过程C在整个程序中大量地被调用。但现已知过程C在一次调用中因参数错误而运行失败了。怎样找出是哪一个过程传给C错误的参数了?这种情况下,一句一句跟踪是比较麻烦的。其实只要在过程C的开始的地方打个断点,中断的时候调出堆栈窗口就可以看到是哪一个过程调用C了,不仅如此,在A中调用B,在B中调用C,这一过程都可以看得一清二楚。在程序raise出一个异常而中断的时候也可以看出是从哪里调用了这段子程序的。 第二种是数据断点。菜单命令是Run->Add Break Point->Data Break Point 这个断点只能在运行时设。 举例如下: 要查看某全局变量或某类的属性何时被修改了的情况。例如要跟踪一个全局变量g_GlobalVar。在运行后中断程序,然后选Run->Add Break Point->Data Break Point。在地址一栏输入@g_GlobalVar,点OK即可。以后在这一变量被改变后就会中断(注意程序中断在改变这个变量的语句的下一条语句处,而不是本语句) |
if [Condition] then
asm
int 3;
end;
作用相当于设置条件断点,在条件比较复杂的情况下还是非常有用的
注意,这些调试语句需要使用编译条件控制以避免编译到正式的版本中。
相关文章推荐
- Delphi IDE 调试时偶现假死的解决方法!
- Delphi 10.1 调试出现死机的解决方法
- DELPHI调试状态出现“内存不足”的常规解决方法
- Delphi调试断点无效的解决方法
- OD调试器调试Delphi程序按钮事件断点方法
- Delphi下生成Map文件方法,免杀或调试用的
- Delphi调试服务程序的两种方法
- delphi跟踪调试vcl代码的方法
- Delphi 调试BPL包中引用另外的BPL的方法。
- 浅谈在Delphi中Dll调试方法以及怎样在Dll中使用数据模块DataModule(或表单Form)
- 4种Delphi IDE的调试时查看内存的方法,太酷了!
- Delphi下生成Map文件方法调试用的
- 浅谈wince驱动调试方法(作者:wogoyixikexie@gliet)
- 用全局钩子截掉所有进程的鼠标和键盘 DLL的调试方法
- php异步调试和线上调试网站程序的方法
- 【官方方法】xcode7免证书真机调试
- Dev c++一些调试方法
- Delphi2010 MD5加密的方法
- 浏览器调试动态js脚本的方法(图解)