Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Colaboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 27-03-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 25
Caro Va por buen camino
Mil gracias por responder amiguito, estoy de acuerdo con el exit, entonces mi código quedaría así y la execpción que engloba las demas ya no sería necesarío verdad.

Código Delphi [-]
  Lectura := False;
  slCuerpo.Clear;
  //Try Esta ya no es necesario
    //Nos conectamos
    if IdPOP3.Connected then
     IdPOP3.Disconnect;
    Try
     idPOP3.Connect;
    except
     On Error: Exception Do begin
      AddLog('No se ha podido conectar con el servidor POP. Error: ' + Error.message);
      exit;
     begin
    end;
 
    //Obtenemos el numero de emails que tenemos
    TotalMails:=idpop3.CheckMessages;
 
    //Recuperamos todas la cabeceraa del mensaje nuevo
    if TotalMails>0 then  //solo leeremos un email a la vez
     begin
      Try
       idpop3.RetrieveHeader(1,idMessage);
       AddLog('Se ha recibido un email de '+De+' con asunto '+Tema);
      except
       On Error: Exception Do begin
        AddLog('No se ha podido leer el Header del correo. Error: ' + Error.message);
        exit;
       end;
      end;
      De := idMessage.From.Text;
      Tema := idMessage.Subject;
 
      //Recuperamos el contenido
      Try
       idpop3.Retrieve(1, idMessage);
      Except
       On Error: Exception Do begin
        AddLog('No se ha podido leer el correo. Error: ' + Error.message);
        exit;
       end;
      end;
 
      for i:=0 to idMessage.MessageParts.Count - 1 do
      begin
       if (idMessage.MessageParts.Items[i] is TIdText) then
        begin
         slCuerpo.AddStrings(TIdText(idMessage.MessageParts.Items[i]).Body);
         contenido := True;
        end
       else //Si hubiera archivos adjuntos
        if (idMessage.MessageParts.Items[i] is TIdAttachmentFile) then
          begin
            // Nombre del archivo adjunto
            FileAdjunto := TIdAttachmentFile(idMessage.MessageParts.Items[i]).FileName;
            if FileExists(ExtractFilePath(ParamStr(0))+FileAdjunto) then
              DeleteFile(ExtractFilePath(ParamStr(0))+FileAdjunto);
            // Guardamos el archivo adjunto y lo añadimos a la lista de adjuntos
            TIdAttachmentFile( idMessage.MessageParts.Items[i] ).SaveToFile(ExtractFilePath(ParamStr(0))+FileAdjunto );
            slAdjuntos.Add(FileAdjunto);
          end
      end;//for

      idMessage.Clear;
     end; //if
     Lectura := True;
  {except         //Esto ya no es necesario
   On Error: Exception Do
      AddLog('Ha ocurrido un error. Error: ' + Error.message);
  end;}

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Lectura de correos con TIdPOP3 y TIdMessage de Indy en delphi 5 hardezky Internet 9 25-01-2017 01:46:41
Correos masivos Willo Internet 5 08-02-2008 08:40:25
Uso de correos Nomad Internet 6 14-07-2007 15:18:15
servidor de correos karocs Internet 3 09-08-2006 01:29:56
recibir correos RaulChemical OOP 1 26-02-2004 12:44:24


La franja horaria es GMT +2. Ahora son las 17:11:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi