![]() |
TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Hallo,
in meinem Anrufmonitor für die Fritz!Box verwende ich ein TClientSocket zur Kommunikation mit der FB. Wenn ich die TCP-Verbindung herstelle, würde ich gern die Exceptions abfangen und habe nach dem Createn, dem Event OnError eine Prozedur zugewiesen.
Code:
MySocket := TClientSocket.Create(self);
MySocket.OnError := SocketErr; MySocket.OnConnect:= SocketConn; MySocket.OnRead := SocketMessage;
Code:
Die Ereignisse OnConnect und OnRead laufen auch tadellos, aber ich das Fehlerevent scheint gar nicht auszulösen, da ich in der Prozedur ErrorCode := 0 setze und damit die Exception abfangen müsste (laut Hilfe). Ich bekomme sie aber trotzdem zu sehen ... woran kann's liegen ?
procedure TForm1.SocketErr(Sender:TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: integer);
begin If ErrorCode <> 0 then begin Status.Simpletext:= 'Could not connect to your Fritz!Box'; ErrorCode:= 0; end; end; Das komplette Programm liegt in meinem SVN-Repo: ![]() Grüße jesus :) |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Was für eine Exception bekommst du denn, mit "ErrorCode:= 0;" funktioniert ja nur bei einem ESocketError.
Gruß |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Es ist ein ESocketError > #10061 ... der läßt sich prima erziwngen, wenn man das Prog mit der Firewall blockiert ...
|
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Bekommst du die Exception ausserhalb der IDE auch?
|
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Ja ...
ich hatte ganz vergessen zu erwähnen welche Komponenten noch zum kompilieren nötig sind ... ich zähl sie hier mal kurz auf: CoolTrayIcon: ![]() TOneInstance: ![]() ICS: ![]() Grüße jesus |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Moin,
ich habe das ganze jetzt mal getestet, (allerdings ohne OneInstance) und ich bekomme keine Exception. Gruß |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Liste der Anhänge anzeigen (Anzahl: 1)
das würde ich eigentlich auch erwarten, das ich den Fall ja auch abhandele ... aber ich bekomme tatsächlich eine ... ich häng mal das ganze als Screenshot an :)
Grüße jesus :) |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
@omata
Die Exeption kommt auch ausserhalb der IDE Ich konnte es jetzt auch nachvollziehen, aber vorher habe ich keine bekommen, trotz das ich FritzBoxMonitor aktiviert hatte. Ich versuche das mal zu rekonstruieren. Gruß |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Also wie ich das selbst einschätze ist das Problem, dass das Event OnError gar nicht ausgelöst wird ... egal was ich dort versuche ... der Code wird dort nicht ausgeführt ...
jesus |
Re: TClientSockets und Exceptions (Fritz!Box Anrufmonitor)
Hallo,
nachdem ich nochmal ein wenig rumprobiert habe, habe ich festgetsellt, dass normale Verbindungsfehler doch abgearbeitet werden. Nur wenn ich den Zugriff über die Firewall blocke wird OnError nicht ausgelöst ... warum nicht ? Grüße jesus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz