Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   problemas para enviar mails (https://www.clubdelphi.com/foros/showthread.php?t=25017)

periklesvcl 09-09-2005 00:07:37

problemas para enviar mails
 
tengo 1 problema gordo y es q necesito implementar en mi programa una aplicacion pa enviar mails y la verdad es q por mucho q lo intento no funciona aunq al compilar no da errores.......

les mando el codigo para ver si ustedes (gente amble de este club) localizais algun error.


codigo del boton conectar

Código Delphi [-]
 begin
   NmSmtp1.Host := Combobox1.items.text;
   NmSmtp1.UserID := Edit4.text;
   NmSmtp1.Connect;
 end;
codigo del boton enviar

Código Delphi [-]
 begin
   {Boton de Enviar}
   nmSmtp1.PostMessage.Assign(Memo2.Lines);
   nmSmtp1.PostMessage.FromName := Edit1.text;
   nmSmtp1.PostMessage.Subject := Edit2.text;
   nmSmtp1.PostMessage.FromAddress := Edit3.text;
   nmSmtp1.PostMessage.Body.Assign(Memo1.Lines);
   nmSmtp1.Sendmail;
 end;
gracias de antemano!!!

dec 09-09-2005 00:40:17

(actualización)
 
Hola,

Personalmente, no veo ningún error de bulto en el código fuente.Tal vez este Hilo pueda serte de alguna utilidad. Si te decides por los componentes Indy que se refieren en el mismo puedes ver aquí y aquí dos formas de enviar un correo utilizando dichos componentes. Esta búsqueda en los Foros te dará más información sobre el componente que estás usando ahora: tal vez te ayude.

Actualización:

Cita:

Empezado por dec
Personalmente, no veo ningún error de bulto en el código fuente.

Bueno... tal vez esta instrucción:

Código Delphi [-]
  NmSmtp1.Host := Combobox1.items.text;
Creo que estaría demás, es decir, que bastaría de este modo:

Código Delphi [-]
  NmSmtp1.Host := Combobox1.Text;
Porque lo que se trata de obtener con la propiedad "Text" es el texto del elemento seleccionado en el "ComboBox", mientras que "Item.Text", si no estoy equivocado, te daría el texto de todos los elementos que contuviera el "ComboBox".

periklesvcl 09-09-2005 01:08:25

el problema es el siguiente........tengo delphi 5 y no tengo las indy

e canviado el combo vox por un text edit y la verdad es q funciona mejor.....

pero sige dando errores

puede ser q debo mandar la contraseña tambien al servidor??? y si es asi como lo deberia hacer????

gracias por contestar tan pronto.

dec 09-09-2005 01:26:00

Hola,

Cita:

Empezado por periklesvcl
el problema es el siguiente........tengo delphi 5 y no tengo las indy

Bueno. Los componentes Indy pueden instalarse en Delphi 5, según parece.

Cita:

Empezado por periklesvcl
puede ser q debo mandar la contraseña tambien al servidor??? y si es asi como lo deberia hacer????

Pues sí; probablemente tengas que hacerlo... ese era otro error de bulto que se me escapó, a lo que se ve. ¿Cómo puedes hacerlo? Lo cierto es que no utilizé el componete que usas ahora, pero, supongo que igual que tiene una propiedad "UserID" tendrá alguna como "Pass", "Password" o algo parecido. ¿No? ;)

Nota: En varios Hilos de los que he hallado tras esta búsqueda en los Foros se encarece el uso de los componentes Indy en detrimento del que estás usando ahora mismo. Trata de instalar los componentes Indy, es probable que no te arrepientas.

ContraVeneno 09-09-2005 19:10:23

si mal no recuerdo, hace falta definir el puerto de conecxión por el cuál se enviará el mail.

dec 10-09-2005 05:05:12

Hola,

Cita:

Empezado por ContraVeneno
si mal no recuerdo, hace falta definir el puerto de conecxión por el cuál se enviará el mail.

Así lo creo yo también. ¿Alguien ve algo que halla yo colegido? Porque que se me han pasado posibles errores ya se ve... ¡qué barbaridad! ;)

ContraVeneno 10-09-2005 16:06:32

Ejemplo bastante sencillo de como enviar mails
y lo que veo diferente de lo aquí mostrado y el ejemplo es (además de varias cosas):
- definir el puerto de conexión
- utilizar try except para capturar errores.

Jorge Murguia 31-01-2008 18:57:50

Proble para envio de correo con Indy
 
Disculpen mi ignorancia, para enviar correos por medio de los componentes de Indy de delphi7 a correos gratuitos de hotmail, yahoo, gmail, porque me marca un error que dice "unabled relay correo@hotmail.com ??

que tengo que hacer o saber para poder enviar a cualquier tipo de correo ?

ContraVeneno 31-01-2008 19:03:51

Tu servidor SMTP no esta configurado para "confiar" en las direcciones desde donde envías los correos. Tienes que configurar un usuario que tenga permisos para enviar correos a través de tu SMTP. Cuanto el servidor SMTP te identifica como usuario con permisos, entonces es cuando "confía" y manda el correo.

Enlace

jachguate 31-01-2008 19:07:56

Cita:

Empezado por Jorge Murguia (Mensaje 262401)
Disculpen mi ignorancia, para enviar correos por medio de los componentes de Indy de delphi7 a correos gratuitos de hotmail, yahoo, gmail, porque me marca un error que dice "unabled relay correo@hotmail.com ??

que tengo que hacer o saber para poder enviar a cualquier tipo de correo ?

Para envair correo, precisas de acceso a un servidor de correo, al que te conectas con los clientes de INDY.

Este servidor de correo lo proporciona, por ejemplo, el sitio donde alojas tu dominio, o puede ser que también tu ISP tenga uno.

Hasta luego.

;)

Jorge Murguia 31-01-2008 21:16:40

Gracias por tu atención jachguate, eh estado leyendo ya rato los hilos acerca de como enviar correos, etc, y no me ha caido el 20 aun del problema en sí, encontre que las cuentas de hotmail, etc son IMAP no SMTP, pero sigo buscando algun ejemplo que me aclare como un poco mas, solo necsito algun pequeño ejemplo y yo lo adecuo a mis necesidades, esto es pr lo regular lo que hago siempre cuando no se algo.
Mi correo es por ejm: jorge@midominio.com.mx, pero a quien envio puede que sean cuentas de paga o gratuitas, que sean smtp o imap, como resolver esto y mi correo les llegue a todos, si es que se envio a varios contactos a a la vez?

jachguate 31-01-2008 21:26:05

Cita:

Empezado por Jorge Murguia (Mensaje 262452)
Mi correo es por ejm: jorge@midominio.com.mx, pero a quien envio puede que sean cuentas de paga o gratuitas, que sean smtp o imap, como resolver esto y mi correo les llegue a todos, si es que se envio a varios contactos a a la vez?

El cliente de INDY se conectará a tu servidor de correo (por ejemplo mail.midominio.com.mx), independientemente de quien sea el/los destinatarios de tu correo. El resto del trabajo lo hará este servidor y los servidores con los que se comunique.

Si tu servidor (el mail.midominio.com.mx) es SMTP, tenes el componente TidSMTP. Si es IMAP, tenes el componente TidIMAP4 (ojo, que el servidor tiene que soportar la versión 4 del protocolo).

Ejemplos, según he visto, no hay uno oficial de INDY 10 para correo, pero si hay uno de INDY 9, que podes obtener del sitio del proyecto indy.

Hasta luego.

;)

Jorge Murguia 31-01-2008 22:09:50

jachguate mi servidor si es SMTP, y efectivamente uso TidSMTP y asi lo visualizo yo que yo me conecto a mi servidor smtp y subo el mensaje y el servidor se encarga de distribuirlo a los destinatarios, cierto ?, pero porque cuando agrego una cuenta IMAP entre los destinatarios me marca el error que comentaba hace rato, UNABLED RELAY, las pruebas con otros dominios si me funciona, como ahi que ?
No habia mencionado utilizo los indy de delphi 7...

jachguate 01-02-2008 02:21:54

Cita:

Empezado por Jorge Murguia (Mensaje 262476)
jachguate mi servidor si es SMTP, y efectivamente uso TidSMTP y asi lo visualizo yo que yo me conecto a mi servidor smtp y subo el mensaje y el servidor se encarga de distribuirlo a los destinatarios, cierto ?

cierto!
Cita:

Empezado por Jorge Murguia (Mensaje 262476)
, pero porque cuando agrego una cuenta IMAP entre los destinatarios me marca el error que comentaba hace rato, UNABLED RELAY

No se a que le llamas una cuenta IMAP :confused: :confused:


La franja horaria es GMT +2. Ahora son las 14:29:50.

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