![]() |
Indy: Mail senden im Hintergrund via MailSMTP
Hallo zusammen,
ich versende seit längerer Zeit direkt aus meinem Programm heraus eMails. Klappt auch alles wunderbar. Während des Sendens erscheint dann immer eine Meldung á la "eMail wird versendet ... Bitte warten." Leider habe ich noch nicht herausgefunden, ob und wie das Senden der Mail durch die Indy-Komponente MailSMTP im Hintergrund erfolgen kann ... Der Code ist ja auszugsweise folgender ...
Delphi-Quellcode:
Meine Anwendung "steht still" bis die Mail durch MailSMTP.Send(MailMessage) komplett versendet wurde.
try
try MailSMTP.Send(MailMessage); except result := false; Showmessage('Es trat ein Fehler beim Senden der Nachricht auf! Bitte überprüfe in den Einstellungen die Angaben des Postausgangsservers.'); Application.HandleException(nil); temptext2:='Fehler beim Senden der Nachricht'; end; finally MailSMTP.Disconnect; if FormSMTP.SMTPAuthentifizierung.Checked=True then MailPOP3.Disconnect; if result=True then begin Showmessage('Die Mail wurde erfolgreich versendet!'); temptext2:='Nachricht erfolgreich gesendet'; end; end; Habe bei Google und in der Indy-Hilfe leider nichts gefunden. Hat das jemand schon Erfahrungen gesammelt? Besten Dank! Chaoten-Joe |
AW: Indy: Mail senden im Hintergrund via MailSMTP
Das hat eigentlich nichts mit Indy an sich zu tun. Eine Lösung wäre einen zweiten Thread zu öffnen, der das Senden übernimmt !
bYe |
AW: Indy: Mail senden im Hintergrund via MailSMTP
Auweia! Da bin ich schon Jahre am Programmieren und wüsste gar nicht, wie ich einen zweiten Thread innerhalb des Programms aufmachen soll. Muss mich damit erstmal befassen ...
|
AW: Indy: Mail senden im Hintergrund via MailSMTP
Ich weiss garnicht ob man hier extern verlinken darf aber ich mach es einfach mal...
![]() |
AW: Indy: Mail senden im Hintergrund via MailSMTP
Sehr interessant! Danke! Da hab ich (ehrlich gesagt) noch nie was von gehört ... obwohl ich schon Ewigkeiten mit Datenbanken, Internetanbindung und allem Drumherum zu tun habe ...
Man lernt nie aus ... Super Hinweis! |
AW: Indy: Mail senden im Hintergrund via MailSMTP
Gerade in Sachen Internet Abfragen sind Threads unerlässlich :) Wenn man immer auf Timeouts im Mainthread warten müsste wäre die Arbeit nebenbei unmöglich :)
bYe |
AW: Indy: Mail senden im Hintergrund via MailSMTP
Bedenke dann aber das mit Threads ein ShowMessage nicht erlaubt ist. Und ein Application.HandleException() könnte u.U. auch gefährlich sein (VCL ist nicht Thread-Save).
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:33 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 by Thomas Breitkreuz