Ich hab das Problem jetzt anders gelöst:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var mzwvar, mzwvar2 : string;
lcount, lcount2, highcount, highcount2 : byte;
begin
gcount := 0;
Progressbar1.Max:= Memo1.Lines.Count;
highcount := memo1.Lines.Count;
For lcount := 0 to highcount-1 do
begin
gconst := lcount;
mzwvar := memo1.Lines[lcount];
GetFilesInDirectory(shelltreeview1.SelectedFolder.PathName, mzwvar, Listbox1.Items, True, True);
Progressbar1.Position:= lcount + 1;
label1.Caption := format('Es wurde(n) %d Datei(en) gefunden.',[gcount]);
end;
highcount := listbox1.Items.Count;
For lcount := 0 to highcount2-1 do
begin
mzwvar := ExtractFileName(listbox1.Items[lcount]);
For lcount2 := 0 to highcount-1 do
begin
mzwvar2 := memo1.Lines[lcount2];
if mzwvar = mzwvar2 then memo1.Lines.Delete(lcount2);
end;
end;
end;
Ich weiß, jeder halbwegs belesene Programmierer würde sich bei meinem Quelltext sicher erschießen.^^ Es ist nämlich verdammt umständlich. Und zwar extrahiere ich aus dem gefundenen Element, welches die Pfad- und Dateiangabe enthält, den Dateinamen und suche den im Memo. Wenn die Strings übereinstimmen, wird gelöscht.
Aber eins versteh ich nicht. Ich bekomme jetzt immer die Meldung: "Listenindex überschreitet das Maximum(
Zahlenangabe)."
Weißt du was damit anzufangen?
Schöne Grüße
Eric