Hi,
Was diese Stelle angeht:
Zitat von
berens:
Delphi-Quellcode:
....
if FObjectB.InheritsFrom(TFObjectB)
then begin // trifft nicht zu oder löst sogar Exception aus <-- PROBLEM
So solltest du schauen, was du in der Hilfe zum Thema inheritsFrom findest, dass ist eine Klassen-Methode, die nicht mit einer Referenz sondern mit einer Klasse aufgerufen wird. Du würdest also etwas Testen wie:
Delphi-Quellcode:
if TClassA.inheritsFrom(TClassB) then
...
Du rufst es also nicht mit für eine Instanz, sondern für eine Klasse auf und prüfst ob diese Klasse von einer anderen abgeleitet ist oder nicht.
Für eine Instanz wird der is-Operator verwendet:
Delphi-Quellcode:
var instance : TClassA;
begin
instance := TClassA.Create;
if instance is TClassB then
...
Das könnte schon dein Hauptfehler sein,
Gruß Der Unwissende