E-Mail versenden mit Indy10 Komponenten (Teil 1)

E-Mail versenden ist Dank der Indy10 – Komponenten unter Delphi recht einfach.

Teil 1 beschreibt den Versand einfacher Text – E-Mails, Teil 2 erweitert dies dann um den Versand von HTML-Mails (Bzw. HTML und Text sowie um den Versand von Dateianhängen). Es ist aber mitunter einfacher mit einem Basisbeispiel zu starten und dieses dann schrittweise zu erweitern, da bei Problemen und zu komplexen Beispielen es gerade für Starter schwer ist die Fehlerquelle zu lokalisieren

Aus der Indy – Komponentenpalette benötigen Sie auf ihrer Form:

eine TidMessage – Komponente
eine TisSMTP – Komponente

Um eine E-Mail zu versenden langt bereits folgender Code:

procedure sendeEMail;
var fehler:Boolean;
begin
idmessage1.Clear;
idSMTP1.Host   := ‚mailout.IhrServer.de‘
idSMTP1.Port   := ’25‘;    // in der Regel
idSMTP1.AuthType:=satDefault;   // idSMTP1.AuthType:=satNone, wenn keine Authentifizierung benötigt wird;

// wenn Authentifizierung benötigt wird, was ja heute die Regel ist
idsmtp1.Username:=’Ihr Benutzername‘   // für das E-Mail Konto
idSMTP1.Password := ‚Ihr Passwort‘;

idMessage1.From.address:=’absender@xxxx.de‘
idMessage1.Recipients.EMailAddresses := ‚empfaenger@xxxx.de‘
idMessage1.bcclist.EMailAddresses:=’Optional Blincopy Empfaenger‘
idMessage1.cclist.EMailAddresses:=’Optional Copy Empfaenger‘
idMessage1.Subject:=’Meine erste E-Mail mit Indy10′;
idMessage1.ContentType := ‚text/plain‘;
idMessage1.Body.clear;
idMessage1.Body.text:=’Ihre Nachricht‘
try
try
idSMTP1.Connect();
IdSMTP1.Authenticate;      // nicht zwingend
if idSMTP1.Connected then
idSMTP1.Send(idMessage1);
except on E:Exception do
begin
showmessage(e.Message);
fehler:=True;
end;
end;
finally
if idSMTP1.Connected then
idSMTP1.Disconnect;
end;
if fehler=false then
showmessage(‚Ihre Nachricht wurde erfolgreich versandt‘);
end;

Das war es schon. Dieses Grundgerüst wird im nächsten Teil dann um den Versand von HTML-Emails und Dateianhänge erweitert.

Grundsätzlich ist es eine gute Idee sich eine eigene Klasse zu erstellen. Einmal gemacht hat man die Möglichkeit des einfachen E-Mail Versandes ohne jedesmal dann den Code an den diversen Stellen neu schreiben zu müssen.

Werbung & Infos:




Verwandte Themen: