Menü

SendMapiEmailAttachmentsWithDialog (Pascal-Script)

Zurück | Ebene zurück

Beschreibung

SendMapiEmailAttachmentsWithDialog sendet eine eMail über das MAPI-Protokoll mit Dialog. Das eMail kann Dateianhänge enthalten.

Syntax

function SendMapiEMailAttachmentsWithDialog(const eMail, Subject, Body, Attachments: String; var ResultMsg:String): boolean;

Argumente

eMail enthält die Empfänger eMail-Adresse, subject den Inhalt der Betreffteile und Body den mehrzeiligen Text der eMail. Über Attachments kann eine Dateiliste übergeben werden. Die Dateien werden in dem Fall als Dateiamhänge mit der eMail versendet. Die Funktion liefert bei Erfolg true. Konnte die eMail nicht versendet werden, so wird false geliefert und in ResultMsg steht der Fehlergrund.

Beispiel

var
  Langtext : TStrings;
  Attachments : TStrings;
  ResultMsg : String;
begin
  Attachments:=TStringList.Create;
  Attachments.Add('C:\AUTOEXEC.BAT');
  Attachments.Add('C:\CONFIG.SYS');
  Langtext:=TStringList.Create;
  Langtext.Add('Dies ist eine mehrzeilige');
  Langtext.Add('Mitteilung mit mehr als');
  Langtext.Add('Zeilen Text');
  if not SendMapiEMailAttachmentsWithDialog('info@cnsoft.de',
         'Scriptbeispiel',Langtext.text,
         Attachments.text, ResultMsg) then
    ShowMessage('Email konnte aus folgendem '+
                'Grund nicht versendet werden: '+ResultMsg);
  Langtext.Free;
  Attachments.Free;
end;

Regeln zum Nachvollziehen des Scripts finden Sie hier.

Der Langtextcontainer wird über TStringList.Create erzeugt und mit den Methoden Add werden dem Langtext-Container Textzeilen zugewiesen. Auf gleiche Weise werden die Dateinamen in den Container „Attachments“ hinzugefügt.

Der Befehl SendMapiEMailAttachments versendet die eMail und liefert bei Erfolg true. Kann die eMail nicht versendet werden, so wird der Grund über ShowMessage ausgegeben.

Die eMail wird vor dem Versand im Dialog des verwendeten eMail-Systems, z.B.Outlook, angezeigt und kann dort verändert und abgesendet werden.

Beachten Sie, dass die Container am Ende wieder mit Langtext.Free und Attachment.Free freigegeben werden müssen.