AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Outlook: Email mit Signatur erstellen
Thema durchsuchen
Ansicht
Themen-Optionen

Outlook: Email mit Signatur erstellen

Ein Thema von Keldorn · begonnen am 15. Feb 2009 · letzter Beitrag vom 22. Feb 2009
 
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

Re: Outlook: Email mit Signatur erstellen

  Alt 22. Feb 2009, 10:02
Zitat von toms:
Auch mal probieren könntest du folgendes:

FMailitem.HtmlBody := '<HTML><H2>My HTML page.</H2><BODY>My body.</BODY></HTML>'; Kommt der Fehler dann noch?
ja, FMailitem.HtmlBody :=FMailitem.HtmlBody geht ja auch nicht, jedes setzen fürt zur Exception.

aber der 2.Link hat mir sehr weitergeholfen, mir war auch nicht klar, daß ich mit objDoc = objInsp.WordEditor Zugriff auf "Word" bekomme, das eröffnet einen ja ganz neue Welten .

anhand des 2. Links sieht mein Code nun so aus und funktioniert :
Delphi-Quellcode:
uses ComObj,outlookXP (outlook2000)

procedure Proc_OutlookEmailErstellen(const EmailTextHTML,Betreff,EmpfaengerAN:string;const LesebestaetigungAnfordern:boolean);
//Quellen:
//http://www.delphipraxis.net/topic152179_outlook+email+mit+signatur+erstellen.html
//http://www.outlookcode.com/codedetail.aspx?id=455
Var OutlookApplication: Variant;
    Mailitem,ObjectInspector,WordEditor: OleVariant;
    s:string;
begin
  OutlookApplication := CreateOleObject('Outlook.Application');
  try
    Mailitem := OutlookApplication.CreateItem(olMailItem);
    try
      Mailitem.subject := Betreff;
      Mailitem.ReadReceiptRequested := LesebestaetigungAnfordern;
      Mailitem.Recipients.Add(EmpfaengerAN);
      Mailitem.BodyFormat := olFormatHTML;
      //Mit Aufruf von Getinspector enthält die Mail nun die Signatur
      ObjectInspector := Mailitem.getinspector;

      //Feststellen, ob Word als EmailEditor verwendet wird
      //Email text vor einer evtl. vorhandenen Signatur einfügen
      If ObjectInspector.EditorType = olEditorWord Then
        begin
          WordEditor := ObjectInspector.WordEditor;
          WordEditor.Characters.item(1).InsertBefore(EmailTextHTML);
        end
       else
        begin
          Mailitem.HtmlBody := StringReplace(Mailitem.HtmlBody,
                                             '<body>',
                                             '<body>'+EmailTextHTML,
                                             [rfReplaceAll,rfIgnoreCase]);
        end;

      //Mail anzeigen, anwender kann sie noch bearbeiten und selber versenden
      Mailitem.display;
    finally
      Mailitem := Unassigned;
    end;
  finally
    OutlookApplication := Unassigned;
  end;

end;

procedure TForm3.Button1Click(Sender: TObject);
begin
  //Formatierung ist nur möglich, wenn nicht Word als EmailEditor eingesetzt wird.
  Proc_OutlookEmailErstellen('Dies ist ein <u>Test</u> und hier steht dein Text',
                             'TestBetreff',
                             'Test@irgendwas.de; [email]Test2@irgendwas.de[/email]',
                             true);
end;
lediglich, wenn Word verwendet wird, wird die Formatierung nicht übernommen, müßte man wahrscheinlich komplett alleine formatieren. Aber das ist mir momentan egal, das benötige ich nicht, ein normaler Text reicht mir.

Danke, hast mir sehr geholfen

Gruß Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
 


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 03:43 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-2025 by Thomas Breitkreuz