Indy Server-Socket - Hilfe
-
Wie lasse ich abfragen ob ein Port besetzt ist ?
-
indem du prüfst, ob die Verbindung nicht zu Stande gekommen ist.
-
IdR. wirst du eine Exception bekommen, die du abfangen kannst.
-
wenn die Verbindung fehlschlägt, bekomme ich immer eine hässliche Fehlermeldung.
Kann ich die Umgehen und einfach das in zb, das in eine Textbox schreiben ?
-
Wenn Du das in try/catch schachtelst und den Fehler korrekt abfängst, sollte keine Fehlermeldung des Systems kommen. In den Block kannst Du dann auch Deine eigene Fehlermeldung anbringen.
Imho wird aber, wenn das Programm via BCB gestartet wurde, immer eine Fehlermeldung geworfen. Also das ganze zum Testen direkt aufrufen.
-
jaaaa...
ich fragte ja, somit war doch zu erwarten, dass ich das noch nie gemacht habe ?
Was muss ich denn wo abfangen
Fehler Meldung bzw, Fehler Code kenn ich ja.Application->ShowException(&exception);
Da gibt er mir in der Anwendung die Fehlermeldung hab ich recht ?
dann müsste ich doch nur die Exeption mit nem if Überprüfen und dann was anderes damit tun ?
-
Anhand von mehr als 600 Posts von Dir und in Anbetracht, dass Socket-Programmierung nicht zum Grundlagenwissen gehört, habe ich eigentlich schon angenommen, dass Du wüsstest, wie man mit try/catch umgeht.
Schau doch mal in die Borlandhilfe oder nutze mal Google um zu Verstehen, wie die Sache funktioniert.
-
Ich seh mal. Hab ich noch nie benutzt
-
AAHHH Ich glaub ich verstehen !
btw: Sowas hab ich schon immer mal gesucht xDEDIT: HAHA ! Ist ja genial, das ich nicht vorher darauf gestoßen bin !
nur um zu zeigen das ich das Prinzip geschnallt hab
try { Client->Connect(); } catch (...) { ShowMessage("Schwerwiegender Fehler erkannt"); }
-
genau so läuft das.
Wie gesagt im Builder gestartet kommt der Fehler immer noch, aber extern gestartet, müsste Deine eigene Meldung kommen.