Code: Alles auswählen
procedure TfrmTicker.LoadComplete;
var c: TComponent;
fdData: IfdData;
begin
for c in Components do
if c.getinterface(stringtoguid(GUID_fdData),fdData)
then fdData.Loadcomplete;
end;
Ich bekomme die Fehlermeldung.
Code: Alles auswählen
Projekt kompilieren, Ziel: Optionen.exe: Exit code 1, Fehler: 3
Ticker.pas(191,12) Error: Wrong number of parameters specified for call to "GetComponent"
Error: Found declaration: GetComponent(LongInt):TComponent;
Ticker.pas(191,12) Error: Cannot find an enumerator for the type "<erroneous type>"
Das gleiche mit einer normalen Schleife von 0 bis Componentcount-1 kompiliert einwandfrei:
Code: Alles auswählen
procedure TfrmTicker.Loadcomplete;
var fdData: IfdData;
i: integer;
begin
for i:=0 to ComponentCount-1 do
if Components[i].getinterface(stringtoguid(GUID_fdData),fdData)
then fdData.Loadcomplete;
end;