Ok, zur Verteidigung von Delphi und Schlamperei meinerseits muss natürlich noch gesagt werden, dass dies (hab den Code ein paar Wochen nicht gesehen) keine einfache TComponentList ist, sondern vom Typ TLMDDesignObjects, was zwar auch eine Liste für Komponenten, aber keine TComponenList in diesem Sinne ist.
var
comp: TComponent;
begin
comp := TComponent(SelectedObjects[i]);
(comp as IMyInterface).DS := 1;
^-- scheint zu gehen
(TComponent(SelectedObjects[i]) as IMyInterface).DS := 1;
^-- scheint auch zu gehen
So, schon mal sehr gut dass wir soweit sind, Danke erstmal.
Diese Zeile kann man aber auf die Schnelle nicht mehr vereinfachen, denke ich mal?
Der "as" Operator prüft doch zur Laufzeit alle Objekte, ob die auch wirklich das Interface haben, sonst gibt's
Exception. Korrekt, oder?
Danke nochmal für die Tips!