![]() |
PST-Datei auslesen und Mails in MSG/EML konvertieren
Hallo,
ich möchte gerne die E-Mails aus einer PST-Datei in das MSG- bzw. EML-Format extrahieren/konvertieren. Über die E-Mail-Adresse möchte ich die Mails dann in meiner Kundendatenbank dem jeweiligen Kunden zuordnen. Sollte nach Möglichkeit mit allen Outlook-Versionen funktionieren. In einem anderen Beitrag hab ich vielleicht schon einen interessanten Ansatz gefunden. So ähnlich hätte ich mir das vorgestellt:
Delphi-Quellcode:
Kann aber jederzeit auch was kommerzielles sein, sollte nur funktionieren :wink: Vielleicht hat jemand ja einen brauchbaren Tipp für mich?
procedure TForm1.Button2Click(Sender: TObject);
const olFolderCalendar = $00000009; var outlook, NameSpace, Termine, Termin: OleVariant; FTermine,FItems: OleVariant; i: Integer; sFilter, eFilter, erg: String; begin if (Ed_von.text <> '') and (Ed_bis.Text <> '' ) then begin Memo1.Lines.Clear; outlook := CreateOleObject('Outlook.Application'); NameSpace := outlook.GetNameSpace('MAPI'); Termine := NameSpace.GetDefaultFolder(olFolderCalendar); sFilter:='[START] >= ''' + Ed_von.Text + ''''; eFilter:='[End] <= ''' + Ed_bis.Text + ''''; FTermine:= Termine.Items.Restrict(sFilter); // nur Termine behalten die >= von-Datum FTermine:= FTermine.Restrict(eFilter); // nur Termine davon behalten die <= bis-Datum for i := 1 to FTermine.Count do //resultierende Termine durchmustern begin Termin := FTermine.Item(i); // Titel des Termins und Startdatum mit Zeit auslesen: erg:= Termin.Subject; erg:= erg + ' <Begin: ' + DateTimeToStr (Termin.Start) + ' >'; erg:= erg + ' <Dauer: ' + TimeToStr (Termin.Duration) + ' >'; erg:= erg + ' <Ende: ' + DateTimeToStr (Termin.End) + ' >'; Memo1.Lines.Add(erg); end; Outlook := UnAssigned; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:49 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 by Thomas Breitkreuz