博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TMSScripter脚本调试
阅读量:6934 次
发布时间:2019-06-27

本文共 1970 字,大约阅读时间需要 6 分钟。

 

调试脚本<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Scripter工作室包含组件和方法允许在程序运行时间调试脚本。主要有2种方法调试脚本:1、使用脚本组件方法和属性;2、使用调试组件。使用方法和属性能留下更多的自由给程序员,并且你可以使用他们建立一个属于你自己的调试环境。使用组件可以进行更高级别的调试,在大多数情况下你只需要拖动一个组件和在开始调试前调动一个方法就行了。

 

使用调试的方法和属性

脚本组件有几个允许调试脚本的方法和属性,在Delphi代码内你可以按照自己的需要使用他们,他们的列表在下面:

property Running: boolean;

/写属性,当正在执行脚本的时候,RunningTrue。注意脚本可以暂停,但它仍然在运行,设置Running属性为True与调用Execute方法的效果一样。

 

property Paused: boolean read GetPaused write SetPaused;

/写属性,使用它可以暂停脚本运行或取得脚本运行的状态。

 

procedure DebugTraceIntoLine;

执行当前行,如果当前行包含一个子程序调用,执行指针转到子程序的第一行。

 

procedure DebugStepOverLine;

执行当前行和执行指针转到下一行代码,如果当前行包含一个子程序调用,它运行完整个子程序,和Delphi中的Step Over选项相似。

 

procedure DebugRunUntilReturn;

执行代码直到当前子程序(过程、函数或主脚本块)是完成,执行指针停止在调用子程序的下一行。

 

procedure DebugRunToLine(ALine:integer);

执行脚本直到指定行,类似于DelphiRun to Cursor选项。

 

function DebugToggleBreakLine(ALine:integer):pSimplifiedCode;

激活/禁止一个指定行的断点,如果断点设置是True,执行停止在断点所设置的行。

 

function DebugExecutionLine:integer;

返回调试行的计数值。

 

procedure Halt;

停止脚本执行,不管执行指针在那里。

 

property Halted: boolean read GetHalted;

在调用Halt方法或脚本已经停止后,该属性返回True

 

property BreakPoints: TatScriptBreakPoints read GetBreakPoints;

包含脚本中设置的断点,你可以使用Items[Index]属性或者BreakPointByLine(ALine: integer)方法访问断点,一旦你访问断点,你可以设置属性Enabled(如果断点是活跃的,就会显示出来)和PassCount(它显示有多少次执行经过断点,直到执行结束)。

 

property OnDebugHook: TNotifyEvent read GetOnDebugHook write SetOnDebugHook;

在调试期间(step overstep into等等),每执行一行都会调用OnDebugHook事件。

 

property OnPauseChanged: TNotifyEvent read GetOnPauseChanged write SetOnPauseChanged;

property OnRunningChanged: TNotifyEvent read GetOnRunningChanged write SetOnRunningChanged;

只要pausedrunning属性改变,事件都会被调用。

 

使用调试组件

Scripter工作室有一个特定的调试组件,它是TatScriptDebugDlg,它的使用非常简单:拖动它到窗口上和访问它的Scripter属性在一个存在的脚本组件,调用Execute方法和debug对话框将出现,显示脚本源代码和一个工具条出现在窗口顶端,你可以使用工具条上的按钮或快捷键执行调试行为(run, pause, step over, and so on),快捷键和Delphi的一样。

F4 – Run to cursor

F5 – Toggle breakpoint

F7 – Step into

F8 – Step Over

F9 – Run

Shift+F9 - Pause

Ctrl+F2 – Reset

Shift+F11 – Run until return

 

转载地址:http://jhgjl.baihongyu.com/

你可能感兴趣的文章
探测调试器
查看>>
图案研究2--九格定义
查看>>
通过串口关闭Linux服务器
查看>>
RHEL 5服务篇—使用Apache搭建web服务(四)部署AWStats网站分析系统
查看>>
SQL Serer闩锁 和 闩锁超时故障排除
查看>>
Logparser 分析 Exchange 日志文件
查看>>
KDE与GNOME的起源与发展
查看>>
Linux下Java开发环境的搭建Tomcat6+jdk6+eclipse3.5.2+Myeclipse9.0+mysql5.1.47
查看>>
部署Nagios监控系统(一)
查看>>
银行程序代发工资的方法
查看>>
常见拒绝服务攻击行为特征与防御方法
查看>>
【游戏开发备注之二】配置Xcode版本控制SVN详细步骤内含部分问题解决方案
查看>>
JAVA 和.NET在安全功能的比较
查看>>
从91移动应用发展趋势报告看国内应用现状
查看>>
jps could not synchronize with target
查看>>
Android系统在新进程中启动自定义服务过程(startService)的原理分析 (下)
查看>>
[RHEL5企业级Linux服务攻略]--第3季 DHCP服务全攻略
查看>>
《Pro ASP.NET MVC 3 Framework》学习笔记之五【依赖注入及ninject工具使用】
查看>>
综合应用WPF/WCF/WF/LINQ之三:采用用代码创建的方式实现CheckListBox的CustomControl
查看>>
【原创】用MySQL 生成随机密码-增加大写处理
查看>>