PDA

Ver la Versión Completa : recibir correos


RaulChemical
26-02-2004, 12:12:07
Hola Foro!!!

Tengo que hacer un pequeño apaño en mi aplicacion. Os cuento:

Necesito que sea capaz de recibir un email sin usar el outlook ni ningun otro programa de recepcion de correos, es decir, que sea mi aplicacion kien lo reciba y la que lea ese correo sin que el usuario se de cuenta de lo que esta pasando.

Tengo un procedimiento que hace exactamente lo contrario, mandar a una direccion de correo un email sin que el usuario se entere. Este procedimiento usa un objeto de este tipo: TNMSMTP. El codigo es asi:

procedure EstoyVivo;
var
NMSMTP1: TNMSMTP;
Mensaje : String;
begin
NMSMTP1:= nil;
try
NMSMTP1 := TNMSMTP.Create(nil);
// nos conectamos al servidor
NMSMTP1.Host := 'mail.decorreo.com';
NMSMTP1.Port := 25;
NMSMTP1.UserID := 'direccion.decorreo.com';
NMSMTP1.Connect;

// si estamos conectados mandamos el mensaje

NMSMTP1.PostMessage.FromAddress := 'direccion@decorreo.com'; // la cuenta desde la que se envia
NMSMTP1.PostMessage.FromName := 'Pepito'; // nombre de quien lo envia
NMSMTP1.PostMessage.Subject := 'Esto es un correo'; // asunto
NMSMTP1.PostMessage.ToAddress.Add('Otra_direccion@decorreo.com'); // a la cuenta que se envia
NMSMTP1.PostMessage.ToBlindCarbonCopy.Add('');
NMSMTP1.PostMessage.ToCarbonCopy.Add('');
Mensaje := 'Soy un mensajito que indica que el dia ' +
FormatDateTime('dd " de " mmmm " de " yyyy,',Date) + ' ' +
FormatDateTime('" a las " hh:mm', Time) +
' sigo vivito y coleando!';
NMSMTP1.PostMessage.Body.Add(Mensaje); // mensaje
NMSMTP1.SendMail; // accion de enviar
finally
NMSMTP1.Free;
end;
end;

A ver si me podeis ayudar a hacer el proceso contrario.

Mucas Gracias.

kes
26-02-2004, 12:44:24
Utiliza el componente NMPOP3, que está en la misma pestaña que el NMSMTP. También puedes utilizar los componentes de Indy.
Tanto si utilizas un componente como otro, en las demos de delphi tienes varios ejemplos que hacen lo que tu quieres.

Saludos !