Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Salto de linea en el body de un email (https://www.clubdelphi.com/foros/showthread.php?t=52672)

kverna 28-01-2008 11:29:23

Salto de linea en el body de un email
 
Hola amigos: necesito enviar un email desde delphi ejecutando outlook express donde el cuerpo del mensaje tenga varias linea separadas por 'saltos de linea', es decir el cuerpo del mensaje debería aparecer asi

linea 1
linea 2...

pero cuando creo el email todas las lineas en el cuerpo aparecen de manera contigua:

linea1linea2....

A continuación muestro el código que lo genera:


em_dir:='ejemplo@prueba.com';
em_subject:='Correo de Prueba';
em_body:='linea 1'+#13+'linea2';

//Lo creo y activo outlook express
em_mail:='mailto:'+em_dir+'?subject='+em_subject+'&body='+em_body;
shellExecute(Handle,'open',PChar(em_mail),nil,nil,SW_SHOWNORMAL);

Alguien tiene idea de como insertar estos saltos de línea?

Desde ya muchas gracias

dec 28-01-2008 11:44:24

Hola,

Los saltos de línea en HTML se consiguen con la etiqueta "BR" (break). También podrías usar párrafos (etiqueta P, de paragraph), por ejemplo. ;)

kverna 28-01-2008 12:44:50

Cuando trato de insertar las etiquetas HTML me las toma como una cadena de texto mas e ignora la accion. Debo usar algun caracter de escape?

em_body:='linea1'+'<br>'+linea2?

dec 28-01-2008 12:48:35

Hola,

... pues en principio las etiquetas formarían parte del cuerpo del correo, es decir de la cadena que conforma este, puesto que se supone que ese cuerpo será mostrado como HTML. Es decir, que, bastaría con algo como:

Código Delphi [-]
emailBody := 'Línea 1 < br / > Línea 2';

* Nota que añado espacios en la etiqueta "br", para que pueda mostrarse aquí más o menos correctamente.

kverna 28-01-2008 13:09:11

excelente, funciono a la perfeccion.

Gracias

ixMike 28-01-2008 13:22:00

Tenía entendido que así también funciona (lo he probado con éxito)

Código Delphi [-]
embody:='Linea1'+'%0d%0a'++'Linea2';

Eso sí, tuve un problema al usar ShellExecute de esa forma, y es que los mensajes muy largos salían cortados :(


Salu2.


La franja horaria es GMT +2. Ahora son las 19:16:27.

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