从delphi获取outlook的电子邮件

问题描述:

我想知道是否有人知道如何从Delphi获取电子邮件,例如在Delphi代码的帮助下。 我想获得的是电子邮件的每一个部分一样,主题,发件人,附件等从delphi获取outlook的电子邮件

祝商祺!

这个例子说明如何使用TOutlookApplication组件Delphi使用Outlook发送电子邮件。它应该让你知道什么信息可用于邮件项目。

Detecting mailboxes in outlook会告诉你,你可以找到当前在任何Outlook邮箱中的电子邮件。

function Send: boolean; 
var 
    Outlook: TOutlookApplication; 
    olNameSpace: NameSpace; 
    MailIt: TMailItem; 
    AttachedFile: OleVariant; 
    i: integer; 
    emailaddress: string; 
begin 
    Result := true; 
    Outlook := TOutlookApplication.Create(nil); 
    try 
    Outlook.ConnectKind := ckNewInstance; 
    try 
     Outlook.Connect; 
     try 
     olNameSpace := Outlook.GetNamespace('MAPI'); 
     olNameSpace.Logon('', '', False, False); 
     try 

      for i := 0 to FNewUsers.Count - 1 do begin 
      MailIt := TMailItem.Create(nil); 
      MailIt.ConnectTo(Outlook.CreateItem(olMailItem) as MailItem); 
      try 
       emailaddress := TStapper(FNewUsers.Items[i]).Email; 
       if emailaddress = '' then begin 
       emailaddress := C_MailUnknownAddress; 
       end; 
       MailIt.Recipients.Add(emailaddress); 
       MailIt.Subject := C_MailSubject; 
       MailIt.Body := Format(C_MailBody, 
        [TStapper(FNewUsers.Items[i]).UserId, 
        TStapper(FNewUsers.Items[i]).Password]); 
       MailIt.Save; 
      finally 
       MailIt.Free; 
      end; 
      end; 

     finally 
      olNameSpace.Logoff; 
     end; 
     finally 
     Outlook.Disconnect; 
     end; 
    finally 
     Outlook.free; 
    end; 
    except 
    on E: Exception do begin 
     Result := false; 
    end; 
    end; 
end; 

您可以使用标准OLE自动化访问Outlook:

var 
    Outlook: OLEVariant; 
begin 
    try 
    Outlook:=GetActiveOleObject('Outlook.Application') ; 
    except 
    Outlook:=CreateOleObject('Outlook.Application') ; 
    end; 
    //... 
end; 

您也可以看看TurboPower OfficePartner这是与Office集成的简便方法。我还没有看过这个项目的年龄,所以它可能是过时的,但在头版最近的活动是几个月前...