2011-05-11 21 views
3

成像這個腳本代碼:Delphi Web腳本:如何在執行上下文中從Delphi代碼調用腳本函數?

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; 

這是不是有可能?

回答

2

什麼你要找的可能是IInfo接口,可以作爲

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

有在http://code.google.com/p/dwscript/wiki/FirstSteps一些樣品(向下滾動到功能)中使用,並在單元測試也有一些使用碼(尤其是UdwsUnitTests,請參閱CallFunc方法)。

IInfo服務於Delphi端作爲查詢RTTI,調用函數,直接獲取/設置變量,實例化腳本端對象等的主要方式。大多數示例代碼目前都在單元測試中。

+0

謝謝。我已經瀏覽過單元測試,但沒有找到它。感謝您的指導。現在很明顯。這正是我所期待的。 – 2011-05-12 07:20:14

相關問題