function TMailForm.SendeMail(MailEmpfaenger, CCListe, Betreff, Anhang :
string; Body :TStringList; MailAbsender, MailPasswort, MailServer:
String; MailPort: Integer) : boolean;
var
iAttachment : TIdAttachment;
Erfolg: Boolean;
begin
(* Connect mit Server *)
MailForm.IdSMTP1.AuthType := satDefault;
// simpler Login ohne Authentifizierung
MailForm.IdSMTP1.Host := MailServer;
MailForm.IdSMTP1.Port := MailPort;
MailForm.IdSMTP1.UseTLS := utUseRequireTLS;
// mit SSL -> Port dann in aller Regel 587
MailForm.IdSMTP1.Username := MailAbsender;
// Benutzername
MailForm.IdSMTP1.Password := MailPasswort;
// Passwort
// Verbinden mit Server
try
MailForm.IdSMTP1.Connect;
except
on E:
Exception do
begin
result := false;
Application.MessageBox (PChar(E.
Message),'
Verbindungsfehler Connect !',MB_OK);
MailForm.IdSMTP1.Disconnect;
exit;
end;
end;
(* Mail erstellen *)
MailForm.IdMessage1.ContentType := '
multipart/*';
// mit Anhang!
iAttachment := TIdAttachmentFile.Create(MailForm.IdMessage1.MessageParts, Anhang) ;
MailForm.IdMessage1.Body.Assign(Body);
// der eigentliche eMail -Text aus einem TMemo
MailForm.IdMessage1.Priority := TIdMessagePriority(2);
// Priorität
MailForm.IdMessage1.Recipients.EMailAddresses := MailEmpfaenger;
// Empfängeradresse
MailForm.IdMessage1.ReplyTo.EMailAddresses := MailAbsender;
// Anwortadresse
MailForm.IdMessage1.From.Text := MailAbsender;
// Absenderadresse
MailForm.IdMessage1.Subject := Betreff;
try
MailForm.IdSMTP1.Send(MailForm.IdMessage1);
except
on E:
Exception do
begin
result := false;
Application.MessageBox (PChar(E.
Message),'
Verbindungsfehler Versand !',MB_OK);
MailForm.IdSMTP1.Disconnect;
exit;
end;
end;
result := true;
MailForm.IdSMTP1.Disconnect;
end;