Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi E-Mails in Outlookordner durchsuchen (https://www.delphipraxis.net/124530-e-mails-outlookordner-durchsuchen.html)

Ares 20. Nov 2008 14:58


E-Mails in Outlookordner durchsuchen
 
Hallo!

Ich möchte mir ein kleines Tool schreiben, dass aus einem Ordner in meinem Outlook Daten sammelt. Dabei scheitere ich leider am Zugriff auf die E-Mailinhalte:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  OutlookApp : TOutlookApplication;
  Inbox      : MAPIFolder;
  Folder     : MAPIFolder;
  NmSpace    : _Namespace;
  Mail       : MailItem;
  i: Integer;
begin
  try
    OutlookApp := TOutlookApplication.Create(nil);
    OutlookApp.Connect;

    NmSpace := OutlookApp.GetNamespace('MAPI');

    Inbox := NmSpace.GetDefaultFolder(olFolderInbox);

    // Klappt, weil es nur um mein Outlook geht und der Ordner 10 
    // vorhanden ist...
    Folder := Inbox.Folders.Item(10);

    // Der Ordner enthält nur Mails
    for i:=1 to Folder.Items.Count do begin
      Mail := MailItem(Folder.Items.Item(i));
      MachWas(Mail.Body);    
    end;
  except
  end;
end;
Beim Aufruf von Mail.Body kommt es dann aber zu einer Zugriffsverletzung (EAccessViolation). Der Ordner enthält nur E-Mail, Folder.Items.Count stimmt mit der Anzahl der enthaltenen E-Mails überein. Was muss ich also tun um auf den Quelltext der Mails zugreifen zu können?

Besten Dank
Ares

martin_ 21. Nov 2008 14:20

Re: E-Mails in Outlookordner durchsuchen
 
Hallo,
Delphi-Quellcode:
for i:=1 to Folder.Items.Count do begin
vielleicht funktioniert es so?
Delphi-Quellcode:
for i:=0 to Folder.Items.Count-1 do begin


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:19 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