从delphi获取outlook的电子邮件

Joe*_*Joe 5 delphi email outlook get

我想知道是否有人知道如何从Outlook获取电子邮件,例如借助Delphi代码.我想得到的是电子邮件的每个部分,如主题,发件人,附件等.

最好的祝福!

Mar*_*ema 4

本示例向您展示如何使用 Delphi 提供的 TOutlookApplication 组件通过 Outlook 发送电子邮件。它应该让您了解哪些信息可用于邮件项目。

检测 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;
Run Code Online (Sandbox Code Playgroud)