![]() |
Setzen von Timeout bei Mailversand - immer Fehler?
Delphi-Quellcode:
Try
SMTPClient := TIdSMTP.Create; SMTPClient.Username := MailData.MailUsername; SMTPClient.Password := MailData.MailPassword; SMTPClient.ConnectTimeout := 5000; SMTPClient.Connect(MailData.MailProvider); SMTPClient.Send(SendMessage); SMTPClient.Destroy; DataLog('Mail send to ' + Buffer + '!'); except DataLog('SendMail not possible, Connection failed!'); end; Bei dem obigen Code erhalte ich komischerweise jedes Mal die Meldung 'SendMail not possible, Connection failed!' in meinem Logfenster. Aber: Die Mail wurde versandt. Das verstehe ich nicht... Als ich früher das ConnectTimeout niedriger gesetzt hatte, so kam die Meldung 'SendMail not possible, Connection failed!' nicht. Ich möchte das Timeout aber aus Sicherheitsgründen extra hoch gesetzt haben. Woran liegt dies? |
Re: Setzen von Timeout bei Mailversand - immer Fehler?
Lass dir mal den echten Exception-Text ausgeben, dann siehst du auch warum die Exception aufgetreten ist. :?
|
Re: Setzen von Timeout bei Mailversand - immer Fehler?
Ohja sorry. An dieser Stelle hatte ich das noch vergessen. ;)
|
Re: Setzen von Timeout bei Mailversand - immer Fehler?
Delphi-Quellcode:
except
on E:Exception do begin DataLog('Error: ' + E.ClassName+':'+E.Message); DataLog('SendMail not possible, Connection failed!'); end; end; Ist das die beste Lösung zum Abfangen ? Oder gibt es noch bessere Möglichkeiten mit mehr Infos? Als Meldung bekam ich nun : EIdSMTPReplyError: |
Re: Setzen von Timeout bei Mailversand - immer Fehler?
Das ist die Klasse. Und wie lautet der Text? Ist der Server denn überhaupt erreichbar? Stimmen die Logindaten?
|
Re: Setzen von Timeout bei Mailversand - immer Fehler?
Delphi-Quellcode:
Sonst stand nichts dabei... das war der komplette Text.
Und wie lautet der Text?
Delphi-Quellcode:
Ja, das wunderte mich ja. Die Mails werden immer versandt und kommen an.
Ist der Server denn überhaupt erreichbar?
Logindaten stimmen daher auch. |
Re: Setzen von Timeout bei Mailversand - immer Fehler?
Eventuell antwortet der Server nach dem Versandt mit irgendwas, was die Klasse nicht versteht und als EIdSMTPReplyError interpretiert. Wenn der Mailversandt nachweislich funktioniert, würde ich die Exception einfach ignorieren.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 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