1

我遇到了一个问题,我找不到解决方法......我有一个脚本,它在执行之前需要一些参数数据。当我运行它时,我的代码如下所示:

Exec := FProgram.CreateNewExecution;
Exec.BeginProgram;

Exec.Info.ValueAsString['varName'] := 'varValue';

Exec.RunProgram(0);
Exec.EndProgram;

它运行得很好。但是如果我想调试脚本,我会这样做:

Exec := FProgram.CreateNewExecution;
Exec.BeginProgram;
Exec.Info.ValueAsString['varName'] := 'varValue';

Debugger.BeginDebug(Exec);
Debugger.EndDebug;

作为 Debugger 一个 TdwsDebugger 类,我得到“运行时错误:脚本已经在运行”。如果我在调试之前没有分配变量值,一切都可以。

有什么提示吗?

4

1 回答 1

1

我设法使用 TDelphiWebScript 组件事件来解决它。使用 OnExecutionStarted 也不起作用。我修改了代码并添加了 OnAfterExecutionStarted 事件,然后我在新事件上添加了变量,现在一切正常。

于 2020-09-30T22:31:54.973 回答