Entwickler-Ecke
Sonstiges (Delphi) - Debugger - Exceptions ausschalten [gelöst]
MrSaint - So 09.11.03 11:46
Titel: Debugger - Exceptions ausschalten [gelöst]
Hi!
Hab mal was von ner Möglichkeit gehört, beim Delphi-Debugger bestimmte Exception-Klassen zu definieren, bei denen er das Programm dann nicht unterbricht (also so, wie beim fertigen Programm die try..except bzw. try..finally Blöcke wirken)... und die Option such ich grad irgendwie vergebens :( kann mir jemand helfen? wo iss'n die? oder gibts die gar net?
Ich will die "Connection Closed Gracefully"s von indy abfangen... die nerven!
MrSaint
barfuesser - Mo 10.11.03 10:47
Tools->Debugger-Optionen->Sprach-Exceptions
barfuesser
MrSaint - Mo 10.11.03 14:58
aaahhh! Super! Danke!!!!
:D :D :D
MrSaint
Amun - Mi 08.09.04 13:14
Titel: Re: Debugger - Exceptions ausschalten [gelöst]
MrSaint hat folgendes geschrieben: |
(also so, wie beim fertigen Programm die try..except bzw. try..finally Blöcke wirken
MrSaint |
was muss ich denn da bei Sprach-Exeptions einfügen???
UGrohne - Mi 08.09.04 13:28
Versuchs mal mit EIDConnClosedGraceFully, so stehts bei mir im Delphi aber schon automatisch drin.
Amun - Mi 08.09.04 13:35
nope so gehts leider net...
UGrohne - Mi 08.09.04 13:40
Laut Indy-Hilfe sollte man auch
EIdSilentException
ignorieren, dazu gehört Closed Gracefully nämlich. Probiers mal damit
UGrohne - Mi 08.09.04 13:47
Naja, Du solltest natürlich auch die Integrierte Fehlersuche aktivieren *g*
Amun - Mi 08.09.04 13:49
ja die hatte ich auch schon drin !
bringt alles nichts...
kommt immer wieder dieser fehler...
Amun - Mi 08.09.04 14:17
IdFTP1.List(DirectoryListBox1.Items);
ich will die ordner und so in einer listbox ausgeben...
so ...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| procedure TForm1.Button1Click(Sender: TObject); begin IdFTP1.Connect();
end;
procedure TForm1.IdFTP1Connected(Sender: TObject); begin ShowMessage('Connect'); IdFTP1.List(DirectoryListBox1.Items); end;
procedure TForm1.Button2Click(Sender: TObject); begin IdFTP1.Quit; end;
procedure TForm1.Button3Click(Sender: TObject); begin Form1.Close; end;
procedure TForm1.DirectoryListBox1Change(Sender: TObject); begin
end; |
wenn ich diesen befehl IdFTP1.List(DirectoryListBox1.Items);
wo anders hin mache dann geht gar nichts mehr nachdem ich auf verbinden geklickt habe und nach ca 12 sekunden kommt der gleiche fehler...
sonst kommt er immer sofort...
Moderiert von
UGrohne: Code- durch Delphi-Tags ersetzt.
UGrohne - Do 09.09.04 10:43
Du hast Username, Passwort, Host und Port korrekt angegeben? Ist der Server wirklich erreichbar (Test mit anderem Client). Prüfe vor dem Ausführen eines Befehls auf dem Server auch, ob er wirklich connected ist (IdFTP1.Connected)
Amun - Do 09.09.04 11:16
ja er gibt mir ne nachtricht das er connectet ist!
hab ich so eingefügt
ganz simpel showMassage('connected')
und direkt danach kommt die fehlermeldung!
PW IP Proxy benutzer ist alles richtig...
Amun - Do 09.09.04 11:20
procedure TForm1.IdFTP1Connected(Sender: TObject);
begin
ShowMessage('Connect');
end;
und die zeigt er mir noch und dann kommt der fehler dann kan ja nichts falsch sein
an der IP PW usw oder?
MrSaint - Do 09.09.04 11:28
probiers mal so:
Delphi-Quelltext
1: 2: 3: 4:
| if IdFTP1.Connected then IdFTP1.List(DirectoryListBox1.Items) else showmessage('Not connected :('); |
MrSaint
Amun - Do 09.09.04 11:46
dann kommt sofort die nachricht
connection closed Gracefully.....
**** man das kanns doch net sein!
und wie du oben schon entnehmen kannst habe ich bei sprach-exceptions auch schon
die wichtigen sachen drinne
Amun - Do 09.09.04 11:51
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin IdFTP1.Connect();
end;
procedure TForm1.IdFTP1Connected(Sender: TObject); begin if IdFTP1.Connected then IdFTP1.List(DirectoryListBox1.Items) else showmessage('Not connected ');
end;
procedure TForm1.Button2Click(Sender: TObject); begin IdFTP1.Quit; end;
procedure TForm1.Button3Click(Sender: TObject); begin Form1.Close; end;
end. |
so meinst das doch oder?
MrSaint - Do 09.09.04 15:11
Also ich habs grad vrsucht nachzubauen, aber leider spinnt das hier alles komplett.. der liefert mit "FTP Server. Server ready" als Fehler zurück und ich bekomm ne Exception... naja, egal, net so wichtig..
Auf jeden fall sollte es so gehen, wie du das da hast.
Für das Connction closed gracefully lies mal hier:
http://www.swissdelphicenter.ch/de/showarticle.php?id=1 laut dem musst du beim Debugger _nur_ das EIdSilentException einbauen, nicht aber auch noch das EIdConnClosedGracefully!
Wo bekommst du denn die Exception? Ich kann mich nämlich schwach dran erinnern, dass ich auch mal ne Exception im Indy-Code bekommen hab (ich glaub es war sogar ne connection closed gracefully).. da stand dann komentar dabei, was man tun sollte (alsi im indy-code!)... einfach mal bissl guggn...
MrSaint
Amun - Fr 10.09.04 09:21
danke habe die lösung von wem bekommen aber wirklich dickes respekt
das ihr so hartnäckig an mir dran geblieben seit!!!
ich denke ich werde noch öffters hier sein!
Mfg Amun
UGrohne - Fr 10.09.04 09:29
Schreib doch dann bitte auch noch, wie Du es gelöst hast
Amun - Fr 10.09.04 10:20
Damit sollte es in dein Beispiel Projekt funktionieren:
****************************************************
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38:
| procedure TForm1.BitBtn2Click(Sender: TObject); var LS: TStringList; begin LS := TStringList.Create; try IdFTP1.Host := 'Die Ip wa'; IdFTP1.Password := 'das PW'; IdFTP1.Username := 'Der Nutzer ^^'; IdFTP1.Port := 21;
IdFTP1.ProxySettings.Host := '192.168.20.19'; IdFTP1.ProxySettings.Port := 21; IdFTP1.ProxySettings.ProxyType := fpcmUserSite;
IdFTP1.Connect;
Form1.DirectoryListBox1.Items.Clear;
Form1.IdFTP1.List(LS);
Form1.DirectoryListBox1.Items.Assign(LS); finally LS.Free; end; end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!