Wie hast dus gemacht?
Bin mir eigentlich relativ sicher dass es so aussehen müsste:
Delphi-Quellcode:
var MyOptions: Variant;
res: Variant;
begin
res := 'Irgendwas'; // foo.runMacro(...)
MyOptions := VarArrayOf([VarArrayOf(['Option One', 1234]),
VarArrayOf(['Option Two','Michigan']),
VarArrayOf(['Option Three', res])]);
end;
Genau so habe ich es gemacht und damit klappt der Funktionsaufruf nicht, an den MyOptions übergeben wird. VarArrayOf ruft intern VarArrayCreate auf, was laut Hersteller ja nicht verwerwendet werden darf, da das kein LowLevel-(Delphi)-Array erzeugt.