Hallo,
ja, solange nicht mit Interfaces gearbeitet wird.
Die Sache mit dem i hinter der For-Schleife ist leicht erklärt.
Deine Code-Formatierung sah so aus, als ob du auf die Schleifenvariable nach der For-Schleife zugreifst,
hast du aber nicht.
Delphi-Quellcode:
PapierkorbDateienAuflisten;
For i := 0 to PIDLListe.Count - 1 do
begin
If SameText(PPIDLItem(PIDLListe[i])^.Dateiname,Dateiname) then
begin
pItemIDL := PItemIDList(PPIDLItem(PIDLListe[i])^.IDL);
break;
end;
If i = PIDLListe.Count - 1 then
begin
// das ist eh falsch, denn i ist = PIDLListe.Count, wenn nichts gefunden wurde
// LeerePIDLListe;
exit;
end;
Heiko