Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Problema con archivos adjuntos y cuerpo de mail en indy (https://www.clubdelphi.com/foros/showthread.php?t=35516)

razadi 13-09-2006 01:35:27

Problema con archivos adjuntos y cuerpo de mail en indy
 
Que tal colegas, tegno un problemin, estoy generando una aplicación que envia mails dependiendo una base de datos, de manera automática, es decir, yo selecciono los registros y le doy enviar y empieza a mandarme los mails con el cuerpo de un archivo .htm, esto porque quiero que el mail que llegue tenga el formato de HTML, al hacerlo me lo hace a la perfección pero si le agrego un archivo adjunto al TIdAttachment (INDY), con la siguiente sintaxis
Código Delphi [-]
TIdAttachment.Create(mail.MessageParts, sArchivoPDF);
donde mail es el TIdMessage (indy) y sArchivoPDF es el archivo a adjuntar, no me marca error pero el mail que llega ya no tiene formato HTML y me despliega en modo tesxto incluyendo los TAG del archivo .htm.

Yo se que ustedes me puedn ayudar, por eso de antemano les doy las gracias.
Saludos.

Bicho 13-09-2006 09:31:31

Yo tenia el mismo problema, y escribí el hilo pero se ve que en una de estas veces que nos quedamos sin servidor y se borraron mensajes el mio estaba se fué también, porque no lo encuentro.

Me ocurre lo mismo, envió un mail, con el componente NMFTP con el body en formato HTML y funciona, pero cuando quiero insertar un fichero adjunto (en mi caso un txt) se pierde el formato del body del mail.

Menos mal que por ahora mis usuarios no requieren enviar el txt.

Bueno a ver si alguien nos puedo comentar algo al respecto.

Saludos

razadi 14-09-2006 00:44:20

Ya encontre la solución
 
Foro, encontre la solución al hilo que inicie, y aqui lo pongo por si a alguien le sirve, saludos.

Código Delphi [-]
{Creo el mensaje del mail}
      lMessage := TIdMessage.Create(Self);
      try
        lMessage.From.Name := sSenNomMail;
        lMessage.From.Address := sSenderMail;
        with lMessage.Recipients.Add do begin
          Name := sNomCliente;
          Address := sMailCliente;
        end;
        {Aqui agrego las copias}
        with lMessage.CCList.Add do begin
          Name := 'Cliente';
          Address := 'razadi33@hotmail.com';                                
        end;{del with}
        lMessage.Subject := sAsuntoMail;
        lMessage.Body.Text := '';
        {Creo el cuerpo en TXT}
        lTextPart := TIdText.Create(lMessage.MessageParts);
        lTextPart.Body.Text := 'Sistemas';
        lTextPart.ContentType := 'text/plain';
        {Aqui creo el cuerpo en HTML}
        lTextPart := TIdText.Create(lMessage.MessageParts);
        lTextPart.Body.Text := 'Aqui se pone el código en HTML
Puede poner, cualquier objeto
O puede incluir archivos HTML'
; lTextPart.ContentType := 'text/html'; lMessage.Priority := mpNormal; {Creo el archivo adjunto} lAttachPart := TIdAttachment.Create(lMessage.MessageParts, sArchivoPDF); EnviarMail(lMessage); finally lMessage.Free; end;{del try..finally} end;{del for de las facturas seleccionadas}

Bicho 14-09-2006 09:31:19

Ok, muchas gracias, cuando tenga un momento lo pruebo y digo si me ha funcionado tambien.

Saludos

dec 14-09-2006 09:56:37

Hola,

Cita:

Empezado por razadi
(...) le doy enviar y empieza a mandarme los mails con el cuerpo de un archivo .htm, esto porque quiero que el mail que llegue tenga el formato de HTML, al hacerlo me lo hace a la perfección pero si le agrego un archivo adjunto al TIdAttachment (INDY), con la siguiente sintaxis

Cita:

Empezado por Bicho
Me ocurre lo mismo, envió un mail, con el componente NMFTP con el body en formato HTML y funciona, pero cuando quiero insertar un fichero adjunto (en mi caso un txt) se pierde el formato del body del mail.

Bueno. Parece que Razadi encontró ya una solución, pero, ¿no es extraño que os ocurriera a los dos lo mismo utilizando distintos componentes? ¿No será acaso algo que tenga que ver con el cliente, con el Gestor de correo? Claro que, si se ha encontrado una solución... pero, no he podido dejar de decir esto, porque, desde luego, a mí me extraña que se de el mismo problema en distintos componentes... pareciera como si el "problema" (tal vez no lo sea) estuviera en otro lado... ¿no? ;)


La franja horaria es GMT +2. Ahora son las 18:13:25.

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