Einzelnen Beitrag anzeigen

rantanplan99
(Gast)

n/a Beiträge
 
#2

Re: Problem beim Ordnerwechsel mit dem FTP Client

  Alt 4. Aug 2004, 08:47
Delphi-Quellcode:
procedure TFTP_Inhalt.Button_GoInDirClick(Sender: TObject);
var
   i: integer;
   selectFolder: string;
begin

   for i := 0 to ListBox_FTPINHALT.Items.Count - 1 do
   begin
   if ListBox_FTPINHALT.Selected[i] then
      begin
      selectFolder := IdFTP1.DirectoryListing.Items[i].Filename;
      IdFTP1.ChangeDir(selectFolder);

      FTP_Inhalt1:=TStringList.Create;

      ListBox_FTPINHALT.items.Clear;
      IdFTP1.List(FTP_Inhalt1);
      ListBox_FTPINHALT.Items.Assign(FTP_Inhalt1);

      exit; // HIER BITTE EIN EXIT; EINFÜGEN

      end;
    end;
end;
Also wenn du in das verzeichnis gewechselt bist, überschreibst du ja den Inhalt der ListBox_FTPINHALT, allerdings wird der alte Inhalt davon ja für die Schleife benötigt, und so kann es sein, dass wenn das vorherige Verzeichnis mehr Einträge enthält als dass in das du gewechselt bist, deine Schleife auf Einträge (der ListBox) zugreiffen will, die in deinem neuen Verzeichnis nicht mehr existieren --> Listenindex überschreitet das Maximum

Deshalb füge ein 'exit;' nach dem neuladen des Verzeichnis ein um deine for-Schleife zu verlassen, und es sollte dann klappen
  Mit Zitat antworten Zitat