2011-05-08 2 views
5

Je me demandais si quelqu'un sait comment obtenir des courriels de perspectives par exemple avec l'aide du code Delphi. Ce que je voudrais obtenir est chaque partie de l'email comme, sujet, expéditeur, pièces jointes, etcRecevez un courriel de outlook avec delphi

Meilleures salutations!

Répondre

4

Cet exemple vous montre comment utiliser le composant TOutlookApplication fourni avec Delphi pour envoyer des emails avec Outlook. Cela devrait vous donner une idée des informations disponibles pour les articles de courrier.

Detecting mailboxes in outlook vous indiquera où vous pouvez trouver les courriels qui sont actuellement dans les boîtes aux lettres 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

Vous pouvez utiliser l'automatisation OLE standard pour accéder à Outlook:

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

Vous pouvez également jeter un oeil à TurboPower OfficePartner qui est un moyen facile d'intégrer avec Office. Je n'ai pas regardé ce projet depuis longtemps, donc il pourrait être dépassé, mais sur la première page, la dernière activité date de seulement quelques mois ...

Questions connexes