Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Adjuntar un archivo a una mail (https://www.clubdelphi.com/foros/showthread.php?t=21109)

ichavero 06-05-2005 17:10:44

Adjuntar un archivo a una mail
 
Gente, ya estoy medio desesperado con esto, les comento, tengo una aplicación tipo album fotografico, con un boton que serviria para enviar la imagen por mail.
El tema es que con el comando mailto no ecuentro la forma de adjuntar, varios me han aconsejado usar las indy, pero el tema es que necesito que se habra el outlook o el que tengan predeterminado y que el usuario final pueda escribir algun comentario y enviar el mail.
El tema con las indy es que hay que definir el servidor SMTP y todo eso y no quiero complicarle la vida al que quiere enviar la foto por mail.
Les pido ayuda por favor que como puedo resolver esto.
Desde ya muchas gracias.

dec 06-05-2005 18:57:58

¡No te desesperes del todo!
 
Hola,

Me temo que lo que quieres conseguir no es posible. A continuación "copio y pego" de un texto extraído de este documento del W3C (World Wide Web Consortium):

Cita:


MAILTO URLs

In addition to HTTP URLs, authors might want to include MAILTO URLs (see [RFC1738]) in their documents. MAILTO URLs cause email to be sent to some email address. For instance, the author might create a link that, when activated, causes the user agent to open a mail program with the destination address in the "To:" field.

MAILTO URLs have the following syntax:

mailto:email-address

User agents may support MAILTO URL extensions that are not yet Internet standards (e.g., appending subject information to a URL with the syntax "?Subject=my%20subject" where any space characters are replaced by "%20").

Lo cual quiere decir que con "mailto" no es posible sino especificar la dirección de correo electrónico que ha de utilizarse, y, opcionalmente, algún que otro atributo (como el asunto del correo) pero ya completamente dependiente del cliente de correo que ha de procesar el "mailto" y esto saliéndose del estándar de uso de "mailto".

Buscando en Google sobre este asunto más de una persona ha querido también adjuntar un archivo haciendo uso de "mailto", pero, las pocas respuestas que pueden verse pasan por utilizar algo como esto:


Código:

  mailto:correo@servidor.com?attach=C:\archivo.txt
... y esto no funciona, al menos no con los clientes de correo con los que he podido probarlo: Outlook Express y Mozilla ThunderBird.

Así pues tendrás que implementar otra solución, bien con ayuda de los componentes Indy, bien con la de otros componentes. No creo que sea un problema solicitar al usuario una serie de datos relativos al envío del correo: creo que cualquier usuario podría proporcionarlos y, cuando no, preguntar por ellos y proporcionarlos una vez obtenidos.

También se me ocurre que mediante un poco de ayuda trates de orientar al usuario acerca de los datos que son precisos, de manera que no se sienta intimidado al solicitárselos. Por otro lado tu programa, en este caso, podría luego guardar de algún modo dichos datos, de manera que el usuario no tuviera que proporcionarlos de nuevo.

También cabe la posibilidad de no hacer uso de un servidor Smtp: uno de los ejemplos que puedes obtener en la página de los componentes Indy se llama "SMTPRelay" y promete precisamente eso, aunque no sabría decirte mucho más, pues no comprendo del todo su funcionamiento.

Seguramente haya otras posibles soluciones, pero esto es todo lo que se me ocurre decir por ahora: probablemente alguien podrá aportar también su punto de vista respecto al tema en cuestión y ayudarte en cuanto pueda, como he tratado de hacer yo.

jachguate 06-05-2005 20:48:10

Tengo entendido, aunque es algo que jamás he usado, que también te seria posible adjuntar un archivo a un mensaje de outlook valiendote de MAPI (mail application program interface). Porque no buscas del tema, incluso aqui en los foros, y nos cuentas como te va.

Saludos.


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

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