Autor Beitrag
Kreilon
Hält's aus hier
Beiträge: 7



BeitragVerfasst: So 17.10.04 19:37 
Jedesmal wenn ich mein Programm starte und auf den Button Klicke bei dem folgendes passieren sollte:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
procedure TForm1.Button37Click(Sender: TObject);
begin
  if IdFTP1.Connected then try
    if TransferrignData then IdFTP1.Abort;
    IdFTP1.Quit;
  finally
    Edit9.Text := '/';
  end
  else with IdFTP1 do try
    Username := Edit10.Text;
    Password := Edit23.Text;
    Host := Edit4.Text;
    Port:=21;
    Connect;            {<--------------- Fehler liegt hier}
    Self.ChageDir(Edit9.Text); 
    SaveFTPHostInfo(Edit9.Text, 'FTPHOST');
  finally
    if Connected then begin
    end;
  end;
end;


Dann kommt folgender Error: "... class Elisterror. List index out of bounds (1). Process stopped."
Dieser Teil ist übernommen vom Indy-Client-Beispiel. Ich bin 100% sicher, dass ich Edit4.Text nicht mit Edit10 oder Edit23.Text verwechselt habe (mehrere Male überprüft).
Ich kriege einfach nicht heraus, wo der Fehler liegt.

Moderiert von user profile iconMotzi: Code- durch Delphi-Tags ersetzt.
herzi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 168

WINXP pro, SUSE Linux 9.0
D7 Pers.
BeitragVerfasst: Do 28.10.04 13:49 
Ist das bei mehreren Servern ?

Versuch mal dich nicht sofort einzuloggen sondern erst seperat zu verbinden.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
procedure TForm1.Button37Click(Sender: TObject);
begin
  if IdFTP1.Connected then try
    if TransferrignData then IdFTP1.Abort;
    IdFTP1.Quit;
  finally
    Edit9.Text := '/';
  end
  else with IdFTP1 do try
    Username := Edit10.Text;
    Password := Edit23.Text;
    Host := Edit4.Text;
    Port:=21;
    Connect(false); // Verbindet sich zum Server ohne auto. Login 
    Login; 
    Self.ChageDir(Edit9.Text); 
    SaveFTPHostInfo(Edit9.Text, 'FTPHOST');
  finally
    if Connected then begin
    end;
  end;
end;


Edit

in deiner With Schleife schreibst du

ausblenden Delphi-Quelltext
1:
2:
    Self.ChageDir(Edit9.Text); 
    SaveFTPHostInfo(Edit9.Text, 'FTPHOST');


Das sollte doch wohl ausserhalb stehen!

Moderiert von user profile iconMotzi: Code- durch Delphi-Tags ersetzt.