Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Cargar un archivo eml en un memo... (https://www.clubdelphi.com/foros/showthread.php?t=54253)

Chente(rMan) 12-03-2008 18:25:03

Cargar un archivo eml en un memo...
 
Que tal compañeros, me encuentro en la necesidad de cargar un archivo eml en un memo, eso ya lo pude hacer con

Código Delphi [-]
 
  Memo1.Lines.LoadFromFile('c:\tmp\correo.eml')

pero no es como me gustaría mostrarlo, quiero que solo aparesca el cuerpo del mensaje, y en otros label mostrar el PAra: CC: Asunto: , estuve viendo que con el componente NMPOP3 se puede hacer, la cuestión es como le cargo el archivo eml a ese componente, estaba pensado en algo así:

Código Delphi [-]
 
  NMPOP31.Assign('c:\tmp\correo.eml');


Esta es la parte en la cual necesito la ayuda, ya con eso estaría del otro lado, pues basta con hacer lo siguiente y obtenemos todos los datos.


Código Delphi [-]
 
  Edit1.Text := NMPOP3.MailMessage.From;
  Edit2.Text := NMPOP3.MailMessage.Subject;
  Memo1.Lines.Assign(NMPOP3.MailMessage.Head);
  Memo2.Lines.Assign(NMPOP3.MailMessage.Body);


Saludos.

Vicente López.

Chente(rMan) 13-03-2008 19:45:24

:confused: Una luz por favor...

keyboy 13-03-2008 19:55:08

Siempre queda la opción de hacerlo a pie.

Revisas línea por línea. Si la línea comienza con To:, el resto de la línea será el destinatario; si comienza con Subject:, el resto será el asunto, etc.

Cuando encuentres una línea en blanco querrá decir que ya terminaron los encabezados. Lo que sigue es el cuerpo del mensaje.

Bye

keyboy 13-03-2008 20:15:28

A ver, un ejemplo menos cavernícola :)

Código Delphi [-]
IdMessage1.LoadFromFile('archivo.eml');
Edit1.Text := IdMessage1.Headers.Values['To'];
Edit2.Text := IdMessage1.Headers.Values['Subject'];
Memo1.Lines.AddStrings(IdMessage1.Body);

IdMessage es un componente que viene con los componentes Indy

Bye

Chente(rMan) 13-03-2008 23:11:57

Gracias keyboy, pero desafortunadamente no funciona la línea de abajo

Cita:

Empezado por keyboy (Mensaje 273068)
IdMessage1.LoadFromFile('archivo.eml');

me marca el siguiente error:

Cita:

undeclared identifier: 'LoadFromFile'

Se veia bien :(

keyboy 14-03-2008 03:20:11

Debe ser cosa de la versión. Yo lo probé con la 10.

Bye

Chente(rMan) 14-03-2008 21:09:27

No encuentro de donde ver la versión que tengo instalada, voy a bajarme la última versión para probar, gracias KeyBoy.

Saludos.

Vicente López.


La franja horaria es GMT +2. Ahora son las 12:19:33.

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