Delphi Web Script:如何在执行上下文中从Delphi代码调用脚本函数?

3

想象一下这段脚本代码:

procedure A;
begin
  CallToDelphi;
end;

procedure B;
begin
  // do something
end;

我已经将“CallToDelphi”过程暴露给脚本。因此,当它被调用时,我会从脚本返回到我的Delphi代码中。现在我想从我的Delphi代码中调用脚本过程“B”。我认为它必须隐藏在IdwsProgramExecution-Context中。但是我还没有找到任何东西。我正在寻找类似于以下内容的东西:

procedure CallToDelphi;
begin
  Exec.Invoke('B', []); // Exec is IdwsProgramExecution
end;

这个有什么办法实现吗?

1个回答

2
您要查找的可能是IInfo接口,它可用作
Exec.Info.Func['B'].Call([])

http://code.google.com/p/dwscript/wiki/FirstSteps中有更多示例(向下滚动到函数部分),还有一些单元测试中的使用代码(特别是UdwsUnitTests,参见CallFunc方法)。

IInfo作为主要的方式,在Delphi端查询RTTI、调用函数、直接获取/设置变量、实例化脚本端对象等。目前大部分示例代码都在单元测试中。


谢谢。我已经浏览了单元测试,但没有找到它。感谢您的指导。现在很清楚了。这正是我要找的。 - Steffen Binas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接