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

时间:2011-05-11 14:38:53

标签: delphi dwscript

对此脚本代码进行映像:

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 个答案:

答案 0 :(得分:2)

您正在寻找的可能是IInfo接口,可用作

Exec.Info.Func['B'].Call([])

http://code.google.com/p/dwscript/wiki/FirstSteps中有更多样本(向下滚动到函数),还有单元测试中的一些使用代码(尤其是UdwsUnitTests,请参阅CallFunc方法)。

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

相关问题