Fórum Enviar e-mail com o IdMessage #280008

04/05/2005

0

Eu queria saber se é possivel colocar uma imagem no fundo do e-mail, como se fosse um papel de carta.

Eu utilizei essa lógica abaixo, mas se quem recebe meu e-mail não tiver essa imagem no computador, ela não acha o caminho e só aparece um X.

Alguém sabe como resolver

[color=blue:1a3b20cd40]var
newText:TIdText;
newAttach:TIdAttachment;
begin
arquivo:= ExtractFileName(dlgFigura.FileName);

newText:= TIdText.Create(IdMsgSend.MessageParts);
newText.ContentType:= ´text/html´;
newText.Body.Add(´<HTML><BODY>´);
newText.Body.Add(´IMG SRC= arquivo ´); // eu tirei os sinais de <> pq não estava aparecendo o código aqui no forum
newText.Body.Add(´</BODY><HTML>´);
// Anexa a imagem ao corpo do email
newText:= TIdText.Create(IdMsgSend.MessageParts);
newText.ContentType:= ´text/plain´;
newAttach:= TIdAttachment.Create(IdMsgSend.MessageParts, arquivo);
newAttach.ExtraHeaders.Values[´Content-ID´]:= arquivo;[/color:1a3b20cd40]


Blbacelar

Blbacelar

Responder

Posts

04/05/2005

Massuda

Dê uma olhada neste artigo [url=http://www.dragonsoftru.com/?html=indy-email.html]EMAIL MESSAGES FROM DELPHI. USING INDY TO SEND E-MAILS[/url] (de Serge Dosyukov da Dragon Software, em inglês). O artigo explica como gerar diversos tipos de mensagens no Indy (texto simples, texto simples com anexos, HTML e HTML com anexos); a parte 3 explica como gerar uma mensagem formatada em HTML com imagens anexas.


Responder

Gostei + 0

04/05/2005

Blbacelar

valew pela dica.. fui la no site e funcionou legal...


Responder

Gostei + 0

16/05/2005

Decandido21

Ola,
Eu preciso mandar um layout de orcamento no corpo do email e estava colocando toda esta rotina no evento onshow do memo depois atribui o conteudo do memo para envio. Ex.:
IdMessage.Body.Text := Memo1.Lines.Text;
No corpo do email, ou seja no memo, perfeito o layout fica de acordo com o q foi desenvolvido.
O problema é qdo este email chega para o destinatário ele considera tudo como Uma Linha
Vendo o link da postagem do colega acima mudei minha rotina para:
IdMessage.Body.Add(´PEDIDO :´ +cdspedido.num_pedido.value);
IdMessage.Body.Add(´´);
IdMessage.Body.Add(´DATA :´ +cdspedido.data.value);

mesmo assim o email chega ao destinatario em uma linha apenas
Alguem ja passou pela mesma situação q a minha


Responder

Gostei + 0

19/05/2005

Blbacelar

Tenta colocar assim:

IdMessage.Body.Add(´PEDIDO :´ +cdspedido.num_pedido.value+#1310);
IdMessage.Body.Add(´DATA :´ +cdspedido.data.value);

o 1310 vai pular e quebrar a linha.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar