2011-05-08 29 views
5

Outlookの電子メールをDelphiコードの助けを借りて受け取る方法を知っている人がいるのだろうかと思っていました。 私は、件名、送信者、添付ファイルなどの電子メールのすべての部分を取得したいと考えています。delphiでoutlookからメールを受け取る

よろしく!

答えて

4

この例では、付属の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; 
2

は、Outlookにアクセスするための標準的なOLEオートメーションを使用することができます。

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

また、オフィスと統合する簡単な方法ですTurboPower OfficePartnerを見ていることがあります。私はこのプロジェクトを長年にわたって見ていないので、時代遅れかもしれませんが、フロントページには数ヶ月前の最新の活動がありました...

関連する問題