verificar emails (POP3)

Delphi

02/01/2007

como posso conseguir acessar uma conta de email através do POP3 e varrer todas as mensagens da caixa postal analisando os títulos?


Raserafim

Raserafim

Curtidas 0

Respostas

Massuda

Massuda

02/01/2007

Exemplo usando o componente TIdPOP3 do Indy.
var
  N: Integer;
  I: Integer; 
...
  // IdMessage1 é um TIdMessage
  // IdPOP31 é um TIdPOP3

  IdPOP31.Host := ´nome-do-seu-servidor-POP3´; 
  IdPOP31.Username := ´seu-username´; 
  IdPOP31.Password := ´sua-senha-secreta´; 
  
  IdPop31.Connect; 

  try 
    N := IdPop31.CheckMessages; 
    for I := 0 to N-1 do begin 

      IdMessage1.Clear; 

      if IdPop31.RetrieveHeader(I, IdMessage1) then begin

        // IdMessage1.Subject tem o assunto/título do email
        // IdMessage1.Body e correlatos estão vazios
      end; 
  finally 
    IdPop31.Disconnect; 
  end;



GOSTEI 0
Raserafim

Raserafim

02/01/2007

valeu massuda,

vc poderia explicar um pouco sobre o componente TIdMessage?


GOSTEI 0
Massuda

Massuda

02/01/2007

O TIdMessage representa uma mensagem de email e encapsula toda a lógica de codificar/decodificar a mensagem para/do formato usado pelo servidor de email. Que tipo de detalhe você gostaria de saber?


GOSTEI 0
Anderson Lopes

Anderson Lopes

02/01/2007

exemplo usando o componente tidpop3 do indy.
var
  n: integer;
  i: integer; 
...
  // idmessage1 é um tidmessage
  // idpop31 é um tidpop3

  idpop31.host := ´nome-do-seu-servidor-pop3´; 
  idpop31.username := ´seu-username´; 
  idpop31.password := ´sua-senha-secreta´; 
  
  idpop31.connect; 

  try 
    n := idpop31.checkmessages; 
    for i := 0 to n-1 do begin 

      idmessage1.clear; 

      if idpop31.retrieveheader(i, idmessage1) then begin

        // idmessage1.subject tem o assunto/título do email
        // idmessage1.body e correlatos estão vazios
      end; 
  finally 
    idpop31.disconnect; 
  end;



GOSTEI 0
POSTAR