Bei der Zuweisung an Value in der oberen Funktion erhalte ich eine Zugriffsverletzung. Was mache ich falsch?
Delphi-Quellcode:
var
strList: TStringList;
begin
strList := TStringList.Create;
try
strList.Add('Peter');
strList.Add('Klaus');
strList.Add('Petra');
var rttiType: TRttiType := TRttiContext.Create.GetType(TypeInfo(TStringList));
if rttiType <> Nil then
begin
var rttiProp: TRttiIndexedProperty := rttiType.GetIndexedProperty('Strings');
if (rttiProp <> Nil)
and (rttiProp.PropertyType.TypeKind = tkUString) then
begin
var value: TValue := rttiProp.GetValue(strList, [1]);
ShowMessage(value.AsString);
end;
end;
finally
strList.Free;
end;
In diesem Fall zum Beispiel, wenn die Liste leer wäre.
Bis bald...
Thomas