Du brauchst also einen Pascal Interpreter. Da könnte ich dir die
JVCL Komponente TJvInterpreterProgram vorschlagen.
Hier ist mal eine mögliche Anwendung:
Delphi-Quellcode:
procedure MyTest(var s: string; a: Integer); stdcall;
begin
ShowMessage(s + ' ' + IntToStr(a));
s := 'Was anderes';
end;
exports
MyTest;
initialization
GlobalJvInterpreterAdapter.
AddExtFun('system', 'MyTest', 0, ParamStr(0), 'MyTest', -1, 2, [varByRef or varString, varInteger], varEmpty);
end.
Und der zu interpretierende Code sieht so aus:
Delphi-Quellcode:
unit Test;
interface
implementation
function main:
string;
var s:
string;
begin
s := '
Hallo'
MyTest(s, 1000);
MyTest(s, 300);
end;
end.