AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Error Popups / SocketError usw.
Thema durchsuchen
Ansicht
Themen-Optionen

Error Popups / SocketError usw.

Ein Thema von doom98 · begonnen am 5. Mai 2005 · letzter Beitrag vom 6. Mai 2005
Antwort Antwort
doom98

Registriert seit: 18. Feb 2005
18 Beiträge
 
#1

Error Popups / SocketError usw.

  Alt 5. Mai 2005, 12:16
Hallo,

gibt es eine Möglichkeit allgemein diese Fehlermeldungen/popups zu unterdrücken?
Ich schreibe grade einen IRC CLient und sobald Inet nicht geht kommen immer diese SocketError Meldungen und das nervt ganz schön.

errorcode = 0 geht bei dem OnSocketError Event nicht...

Mfg
Doomy
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Error Popups / SocketError usw.

  Alt 5. Mai 2005, 12:24
du kannst das ganze doch in einen "Try-Except/Try-Finally" block packen
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
doom98

Registriert seit: 18. Feb 2005
18 Beiträge
 
#3

Re: Error Popups / SocketError usw.

  Alt 5. Mai 2005, 23:26
Hm wie müsste das den aussehen noch nie gemacht
  Mit Zitat antworten Zitat
Arnulf

Registriert seit: 28. Okt 2004
Ort: Wien
271 Beiträge
 
#4

Re: Error Popups / SocketError usw.

  Alt 6. Mai 2005, 00:02
Zitat:
errorcode = 0 geht bei dem OnSocketError Event nicht...
geht eigentlich schon - verwendest du fastnet componenten oder indy?

wenn es wirklich ein windows socket error ist, solltest du die mit errorcode := 0 schon abfangen können.
allerdings sollte man errors auch behandeln, weil du leicht in einer endlos schleife landen kannst oder access violation oder schlimmeres .
try except hilft dir bei threads übrigens garnichts - und wenn du dazuwischen den prozess freigibst hast auch ein problem ( application.processmessages oder ähnliches).
Also wenn du bei deinen sockets threads verwendest, helfen dir try except blöcke nichts (ausser du baust das in den tread selbst ein).

ansonsten funktioniert try except so:

Delphi-Quellcode:
try
dein code
except
error behandeln
end;
ist in der delphi hilfe aber ganz gut erklärt.

wenn du recourcen anforderst und unbedingt willst, daß am schluß die recourcen wieder frei gegeben werden, dann nimmt man try finaly.

Delphi-Quellcode:
recource anfordern.
try
dein code
finally
recource freigeben
end;
Arnulf
  Mit Zitat antworten Zitat
doom98

Registriert seit: 18. Feb 2005
18 Beiträge
 
#5

Re: Error Popups / SocketError usw.

  Alt 6. Mai 2005, 06:29
Hi, achso danke für die Erklärung .
Zitat von Arnulf:
geht eigentlich schon - verwendest du fastnet componenten oder indy?
Ja ich benutze Indy.
  Mit Zitat antworten Zitat
Arnulf

Registriert seit: 28. Okt 2004
Ort: Wien
271 Beiträge
 
#6

Re: Error Popups / SocketError usw.

  Alt 6. Mai 2005, 10:29
zu meiner schande muß ich zugeben ich hab indy tcp noch nie verwendet deshalb weiß ich nicht, ob der error event ausgelöst wird - hab immer fastnet verwendet.

bei indy udp hab ichs auch mit try und except gemacht aber die laufen nicht in einem thread!

Naja ich werd mir indy tcp mal anschauen aber die waren immer umständlicher zu bedienen als fastnet.

Arnulf
  Mit Zitat antworten Zitat
doom98

Registriert seit: 18. Feb 2005
18 Beiträge
 
#7

Re: Error Popups / SocketError usw.

  Alt 6. Mai 2005, 11:07
Hat den Fastnet eine IRC Kompo?!
Dann würde schreib ich halt alles um.
  Mit Zitat antworten Zitat
Arnulf

Registriert seit: 28. Okt 2004
Ort: Wien
271 Beiträge
 
#8

Re: Error Popups / SocketError usw.

  Alt 6. Mai 2005, 12:38
nein hat es nicht.
vergiss es einfach - für irc hast soweit ich weiß nur indy.
hab einfach nicht wirklich nachgelesen wofür das sein soll.

wenn man ordentlich mit indy umgehen kann, gibts eh nichts besseres und normalerweise verwenden auch alle indy.
Fastnet oder Tserversocket - Tclientsocket ist hald komfotabler aber man kommt um indy eh nicht herum.

Da ich mit irc noch garnichts gemacht hab weiß ich auch nicht wie das läuft.
Das onerror nicht funktionieren soll bei indy finde ich seltsam.
Ich werd mich mal kurz schlau machen...
Eine möglichkeit um errors abzufangen - und ich finde, daß ist keine gute, ist den on exception handle mit einer eigenen funktion zu überschreiben.
Das geht aber nur, wenn indy wirklich keine error behandlung macht, weil sonst kommst garnicht in den exception handler von deinem programm.

Delphi-Quellcode:
Application.OnException := MyExceptionHandler;


procedure TfMain.MyExceptionHandler (Sender : TObject; E : Exception);
          begin
               if ( E.Message = 'Timeout' ) // oder ähnliches mußt dir die errors anzeigen lassen
          end;
Nur macht man das bei sockets normalerweise nicht so, weil die componenten eigentlich socket errors abfangen sollten!!

Arnulf
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz