Meine Delphi-Anwendung führt Skripte mit JvInterpreter (aus dem Jedi-Projekt).Laufzeitauswertung von Werten in DelphiWebScript
Eine Funktion, die ich verwende, ist Laufzeitauswertung von Ausdrücken.
Script Beispiel:
[...]
ShowMessage(X_SomeName);
[...]
JvInterpreter nicht weiß X_SomeName. Wenn der Wert von X_SomeName erforderlich ist, ruft der Scripter seinen OnGetValue-Callback auf. Dies zeigt auf eine Funktion, die ich behandeln. Dort suche ich den Wert von X_SomeName und gebe ihn zurück. Dann ruft JvInterpreter ShowMessage mit dem von mir angegebenen Wert auf.
Jetzt erwäge ich, zu DelphiWebScript zu wechseln, da es eine korrekte Debug-Schnittstelle hat und auch schneller als JvInterpreter sein sollte.
Problem: Ich habe keine offensichtliche Möglichkeit gefunden, zu implementieren, was JvInterpreter mit seinen OnGetValue/OnSetValue-Funktionen tut.
X_SomeName sollte berücksichtigt werden (und ist eigentlich die meiste Zeit) eine Variable, die von der Host-Anwendung behandelt wird.
Irgendwelche Ideen?
Danke!
Haben Sie darüber nachgedacht, diese Variable zu einer Funktion zu machen, die Ihre Anwendung aufruft? Sicher verlieren Sie das "Set" Verhalten, aber mindestens die Hälfte des Jobs ist erledigt. – Nedko
Ich habe - würde aber nicht funktionieren. Das "SomeName" -Part von X_SomeName kann alles sein, also kann ich es nicht vorne deklarieren. Deshalb brauche ich Laufzeitauswertung. –