Du müßtest erstmal schauen ob/wie man mit der neuen
RTTI "alle" Klassen auflistet, bzw. dort nach der Gewünschten sucht.
Wenn du dann Etwas ala TClass rausbekommst, dann könntest du darüber .Create aufrufen.
Problem: Damit das richtige .Create aufgerufen wird, muß dieses als virtual deklariert sein, welches bei TObject (TClass = class of TObject) nicht der Fall ist.
Delphi-Quellcode:
var C: TClass;
X := C.Create;
Hier würde immer nur TObject.Create aufgerufen, egal ob zur (in C gespeicherten) Klasse ein anderes .Create deklariert wurde.
Bei TComponent wäre dieses der Fall und wenn man seinen TComponent-Nachfolger registriert hat, dann geht es auch ohne
RTTI (die
VCL nutzt dieses ja ausgiebig, um die DFMs zu laden)
OK, man könnte nun schauen, ob die
RTTI hier auch noch eine Adresse für das richtige .Create liefert und Dieses direkt aufrufen.