Hallo,
erstmal vielen, vielen Dank an Flocke für den fertigen Code!
Leider compiliert er nicht, und zwar folgenden Teil:
Delphi-Quellcode:
procedure SetNestedProp(Obj: TObject; Prop: string; Value: Variant);
var
p: Integer;
i: PPropInfo;
begin
repeat
p := Pos('.', Prop);
if p = 0 then
begin
i := GetPropInfo(Obj, Prop);
if i <> nil then
SetPropValue(Obj, i, Value);
Obj := nil;
end
else
begin
// GetObjectProp liefert nil, falls die
// Eigenschaft nicht gefunden wird.
Obj := GetObjectProp(Obj, Copy(Prop, 1, p - 1));
Delete(Prop, 1, p);
end;
until Obj = nil;
end;
Und zwar beschwert er sich über die Zeile:
SetPropValue(Obj, i, Value);
Fehlermeldung: Inkompatible Typen: String und PPropInfo.
Da ich den Code leider nicht so gut verstehe, um darin
erfolgreich herumzuwerkeln (bin noch Anfänger), die Fragen:
Was kann ich da tun? Muss ich da einen Typecast machen, und wenn ja, wie?
Kompiliert er bei euch? Bei Flocke?
Vielen Dank,
litotes