欢迎来到天天文库
浏览记录
ID:14887663
大小:47.00 KB
页数:16页
时间:2018-07-30
《delphi开发调试快捷键》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Delphi开发的调试技巧_快捷鍵列表2009-10-1214:26From:http://hi.baidu.com/jangill/blog/item/ae669c58205b2489810a18b5.html1、设置调试选项Delphi主菜单。【Project】->【Options】,或单击工程管理器中的【ProjectOptions】按钮。显示ProjectOptions,选择Complier <1>选中DebugInformation:把调试信息嵌入到DCU单元文件,会加大编译后的DCU文件,但不会影响最后生成的exe的大小和执行速度
2、。同时激活【Search】菜单中的【FindError】命令。当文件中包含调试信息并得到一个运行时错误(run-timeerror),记录下Delphi提供的16进制地址,在【Search】->【FindError】中输入,Delphi将重新编译程序,并停留在产生错误的命令行。 <2>Localsymbols:决定调试器能否看到在Implementation中定义的局部变量。 <3>Referenceinfoj选项/DefinitionOnly选项是否产生应用程序中对象标识符的引用信息。信息和对象代码存在dcu文件中,可以使用对象浏览器查看
3、。如果DefinitionOnly选项同时选中,编译器将生成标识符定义位置的信息,能够激活对象浏览器的Refenrence页。如果不选,Dcu文件更小。 编辑器命令{$D}DebugInformation{$L}LocalInformation{$Y}SymbolInformation{$C}Assertions2、使用内部调试器 <1>命令行参数在【Run】->【Parameters】中设置 <2>断点 条件断点使源代码断点只有在满足某个条件时才有效。在【View】->[Debugwindows]->【BreakPoints】打开“B
4、reakPointList”对话框,右击断点,从弹出菜单中选择属性。打开“SourceBreakPointProperties”对话框,在Condition中输入条件,在对话框中点击按钮【Advanced】,可以设置更多选项,“IgnoreSubsequentExceptions”使调试程序遇到下一个断点时不中断;选中“HandleSubsequentException”则调试程序遇到下一个断点时恢复默认性能。也可以通过【Run】->【AddBreakPoint】设置。 数据断点特定地址的内存被修改时才使程序挂起。【Run】->【AddBre
5、akPoint】->【DataBreakPoint】命令添加,或者在BreakPointList对话框中右击,选择AddDataBreakPoint。输入监测内存区域的开始地址和长度(字节数) 地址断点特定地址的代码执行时就使程序挂起。通常在CPU窗口中设置。 模块加载地址在一个模块加载时使程序挂起。【Run】->【AddBreakPoint】 断点组使用断点组,任何一个断点都能设置成使其他断点有效或无效,可以通过断点算法来查找特殊的错误。3、单步执行 【StepOver】(F8功能键),【TraceInto】(F7功能键),【Runt
6、oCursor】(F4功能键)临时使程序暂停【ProgramPause】。Ctrl+F5【AddWatch】,Ctrl+F7【Evaluate/Modify】4、其他工具 <1>DebugInspector适合查看由许多数据组成的复合数据,诸如类和记录。单击省略号按钮,可以修改数据的值。<2>计算和修改Evaluate/Modify,可以改变变量的值,但不能访问超出域外的函数和变量。<3>访问调用栈【View】->【DebugWindows】->【CallStack】,可以看到函数和过程的调用情况及传递给他们的参数。<4>查看线程,如果应用程
7、序运行了多线程,可以通过【View】【DebugWindows】【Threads】查看线程的状态,可以查看某一线程的源代码,选择当前线程。(ctrl+alt+t)<5>事件日志记录调试期间发生的事情。【View】【DebugWindows】(ctrl+alt+v),可以在【Tools】【DebuggerOptions】对话框“Debugger”选项组或事件日志的本地菜单配置事件日志功能。记录的事件包括:进程开始、终止、模块加载断点、发给应用程序的Windows消息以及使用OutputDebugString()的输出。<6>模块视图获取所有加载到
8、应用程序进程中的模块。(ctrl+alt+m)在过程、函数、事件内部,SHIFT+CTRL+向上的方向键可跳跃到相应的过程、函数、事件的定义.相反,在
此文档下载收益归作者所有