Ich versuche per folgender Funktion E-Mails aus OutLook abzufragen.
Delphi-Quellcode:
procedure CheckMail;
var
Outlook: _Application;
Unknown: IUnknown;
Result: HResult;
NmSpace: NameSpace;
Folder: MAPIFolder;
Mail: MailItem;
lvAttachment: Attachment;
i: integer;
begin
Memo1.Clear;
Outlook := CoOutlookApplication.Create;
NmSpace := Outlook.GetNamespace('
MAPI');
NmSpace.Logon('
', '
', False, False);
Folder := NmSpace.GetDefaultFolder(olFolderInbox);
for i := 1
to Folder.Items.Count
do
begin
Mail := (Folder.Items.Item(i)
as MailItem);
Memo1.Lines.Add('
-------------------------------------');
//Memo1.Lines.Add(Mail.Subject+' from '+Mail.SenderName);
Memo1.Lines.Add(Mail.Subject);
Memo1.Lines.Add('
');
Memo1.Lines.Add(Mail.Body);
if (Mail.Attachments.Count>0)
then
begin
lvAttachment := (Mail.Attachments.Item(1)
as Attachment);
lvAttachment.SaveAsFile('
L:\Daten\MailCheckTest\'+lvAttachment.FileName);
Memo1.Lines.Add('
Attachment saved: '+lvAttachment.FileName);
end;
Memo1.Lines.Add('
-------------------------------------');
end;
Folder.Display;
Outlook.Quit;
end;
Jedoch bekomme ich wenn ich sachen wie Mail.SenderName oder Mail.Body auslese, die angehängte Abfrage.
Gibt es eine Möglichkeit dies zu umgehen? Bei einem automatisiertem Mailcheck ist es äusserst lästig ewig diese Abfrage wegzuklicken.
tia