Page 1 of 1

Enviar imagen local como firma usando Outlook.Application

PostPosted: Mon Jan 23, 2023 2:11 pm
by csincuir
Hola, si alguien me puede ayudar con este problema por favor.
Tengo este codigo HTML para insertar una imagen en body:
Code: Select all  Expand view

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Mi firma HTML</title>
</head>

<body>
<p>Esta es una prueba</p>
<p>Saludos cordiales.</p>

<a href="https://haas.com.gt/" target="_blank"><img src="G:/svnsem/sem68/Imagenes/kperez.jpg" width="500" height="250" style="padding-top:15px;"></a>

</body>
</html>
 

La imagen esta en mi disco local, y si la veo desde el navegador web, funciona correcamente:
Image
Pero cuando la envío como html en un correo de Outlook:
Code: Select all  Expand view

FUNCTION OutlookPiedePagina()
LOCAL oOutlook, oMail, cFirma


oOutlook := CreateObject('Outlook.Application')

oMail := oOutlook:CreateItem(0)

oMail:Subject := 'Asunto del correo'
oMail:To := 'sincuir@yahoo.com'

TEXT INTO cFirma
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Mi firma HTML</title>
</head>

<body>
<p>Esta es una prueba</p>
<p>Saludos cordiales.</p>

<a href="https://haas.com.gt/" target="_blank"><img src="G:/svnsem/sem68/Imagenes/kperez.jpg" width="500" height="250" style="padding-top:15px;"></a>

</body>
</html>
ENDTEXT

oMail:HTMLBody := cFirma

oMail:Send()

RELEASE oMail

Return .f.
 

Al recibir el correo, no se ve la imagen:
Image

Alguien sabe como colocar esa imagen local para que se muestre en el correo?

Saludos.

Carlos

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Mon Jan 23, 2023 4:32 pm
by cnavarro
Carlos, has de "incrustarla" en el código HTML ( base64 )
https://stackoverflow.com/questions/849 ... es-in-html

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Mon Jan 23, 2023 5:44 pm
by csincuir
Gracias Cristobal, voy a probar y te cuento luego.

Saludos cordiales

Carlos.

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Mon Jan 23, 2023 5:56 pm
by cnavarro
Recuerda que sería concatenar en tu código HTML lo que devuelve la function
hb_base64Encode( hb_memoRead( "myimage.jpg" ) )

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 12:21 pm
by csincuir
No funcionó Cristobal.
Nuevamente, al ver el html generado se ve correctamente en el navegador local:
Image

Pero al recibirlo en el correo, no se muestra la imagen:
Image

Este es el codigo como lo estoy haciendo:
Code: Select all  Expand view

FUNCTION OutlookPiedePagina()
LOCAL oOutlook, cImagen
LOCAL oMail, cFirma

cImagen := hb_base64Encode( hb_memoRead( "G:\Tempo\Haas\kperezfirma.png" ) )

oOutlook := CreateObject('Outlook.Application')
oMail := oOutlook:CreateItem(0)

oMail:Subject := 'Recibo de caja...'
oMail:To := 'sincuir@yahoo.com'

TEXT INTO cFirma
<!DOCTYPE html>
<html>
<head>
   <title>Recibo de Caja</title>
</head>
<body>
   <div>
      <h1>Recibo de Caja</h1>
      <p>Esta es una prueba</p>
      <p>Saludos cordiales.</p>
      <img src="data:image/png;charset=utf-8;base64,[data]" width="500" height="250" style="padding-top:15px;" alt="Recibo de Caja" />
   </div>
</body>
</html>
ENDTEXT

cFirma := StrTran( cFirma, "[data]", cImagen )
oMail:HTMLBody := cFirma

oMail:Send()

RELEASE oMail

Return .f.
 


Creo que todo esta correcto, pero no funciona, y probé con una imagen mas pequeña y me dio el mismo resultado.

Saludos.

Carlos

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 2:10 pm
by rubenfernandez01
Disculpen el atrevimiento, tienes configurado Outlook para que baje las imágenes automáticamente?

Saludos
Ruben Dario Fernandez

Enviado desde mi 21081111RG mediante Tapatalk

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 3:48 pm
by karinha

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 4:56 pm
by VitalJavier
Buen dia
Me pasa exactamente lo mismo
Lo que hice para resolverlo, fue subir la imagen a un repositor. (Postimage)
Solamente asi me lo solucione.

Saludos.

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 6:03 pm
by karinha
Asi, funciona bien:


Code: Select all  Expand view

  LOCAL cHtml, oHtml

  oHtml    := SPACE(01)

  oHtml    := "C:\OUTL2007\test.html"

  cHtml    := IF( oHtml = NIL      , SPACE( 1 )   , oHtml )

FUNCTION EnvioEmailOutLook( _cTo, _cComCopia, _cCOculta, _cAttach, _cAttach2, _cAttach3, _cSubject, _cBody, _cHtml, nProvedor_Env  )

   IF .NOT. EMPTY( _cHtml )

      oEmail:HTMLBody := MEMOREAD( ALLTRIM( _cHtml ) )

   ENDIF

   oEmail:Display( .T. )

 


Fontes completo:

https://mega.nz/file/1RNW2Y5T#XlHnc63dDOIfsXwKrMod3kbfnZyTLhHq0uTAV9vIHfE

Regards, saludos.

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 7:23 pm
by karinha
Entonces lo obtengo mediante una firma digital. Todavía no he descubierto cómo colocar una imagen.

joao.html

Code: Select all  Expand view

<html>

</script>

<head>

João Santos - São Paulo - Brasil - kapiabafwh@gmail.com

</head>
<body>

</html>
 


Regards, saludos.

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 8:02 pm
by karinha
Asi, funciona bien y la imagen esta perfecta.

TEST.HTML

Code: Select all  Expand view

<html>

</script>

<head>

João Santos - São Paulo - Brasil - kapiabafwh@gmail.com

<a href="https://imgur.com/RgY2JBq"><img src="https://i.imgur.com/RgY2JBq.png" title="source: imgur.com" /></a>

</head>
<body>

</html>
 


Regards, saludos.

Re: Enviar imagen local como firma usando Outlook.Application

PostPosted: Tue Jan 24, 2023 8:49 pm
by csincuir
Gracias a todos por sus respuestas.

Rubén, pues el correo lo leo desde la web con yahoo.com o con bluemail, y también con el outlook, y en todos pasa lo mismo, y si tengo configurado ver las imágenes.

Javier, si, con la imagen en algún repositorio web funciona muy bien, el problema es que los clientes no tienen repositorio web, por eso la necesidad de tomarla del disco local.

João, gracias por los ejemplos, voy a probar con los mismos.

Si lo resuelvo, pongo por acá la solución.

Saludos cordiales.

Carlos