AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Indy: Mail senden im Hintergrund via MailSMTP
Thema durchsuchen
Ansicht
Themen-Optionen

Indy: Mail senden im Hintergrund via MailSMTP

Ein Thema von Chaoten-Joe · begonnen am 27. Jun 2010 · letzter Beitrag vom 28. Jun 2010
Antwort Antwort
Chaoten-Joe

Registriert seit: 11. Mär 2007
Ort: Werl
41 Beiträge
 
Turbo Delphi für Win32
 
#1

Indy: Mail senden im Hintergrund via MailSMTP

  Alt 27. Jun 2010, 23:10
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:
  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;
Meine Anwendung "steht still" bis die Mail durch MailSMTP.Send(MailMessage) komplett versendet wurde.
Habe bei Google und in der Indy-Hilfe leider nichts gefunden.

Hat das jemand schon Erfahrungen gesammelt?

Besten Dank!
Chaoten-Joe
Christian Becker
  Mit Zitat antworten Zitat
JoltinJoe

Registriert seit: 26. Jun 2010
29 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Indy: Mail senden im Hintergrund via MailSMTP

  Alt 27. Jun 2010, 23:12
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
  Mit Zitat antworten Zitat
Chaoten-Joe

Registriert seit: 11. Mär 2007
Ort: Werl
41 Beiträge
 
Turbo Delphi für Win32
 
#3

AW: Indy: Mail senden im Hintergrund via MailSMTP

  Alt 27. Jun 2010, 23:38
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 ...
Christian Becker
  Mit Zitat antworten Zitat
JoltinJoe

Registriert seit: 26. Jun 2010
29 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Indy: Mail senden im Hintergrund via MailSMTP

  Alt 27. Jun 2010, 23:42
Ich weiss garnicht ob man hier extern verlinken darf aber ich mach es einfach mal...

Hier ist eine Einleitung zum Thema Threads. Ich persönliche habe englische Tutorials gelesen weil die Inhaltlich besser waren.
  Mit Zitat antworten Zitat
Chaoten-Joe

Registriert seit: 11. Mär 2007
Ort: Werl
41 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: Indy: Mail senden im Hintergrund via MailSMTP

  Alt 27. Jun 2010, 23:51
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!
Christian Becker
  Mit Zitat antworten Zitat
JoltinJoe

Registriert seit: 26. Jun 2010
29 Beiträge
 
Delphi 7 Enterprise
 
#6

AW: Indy: Mail senden im Hintergrund via MailSMTP

  Alt 27. Jun 2010, 23:55
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
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Indy: Mail senden im Hintergrund via MailSMTP

  Alt 28. Jun 2010, 10:07
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).
Windows Vista - Eine neue Erfahrung in Fehlern.
  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 22:14 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