Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-05-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Errores en el envío de correos con TIdSmtp (Indy 9)

Estoy usando este código que utilizo habitualmente con BCB 6 e Indy 9.0.17, incluyendo las dll que indicais pro aquí algunos.
Código:
IdMessage1->From->Address = "administracion-socios@internautas.org";   //Remitente
IdMessage1->Subject = "Prueba de envío";
IdMessage1->Body->SetText("Esto es una prueba.");
IdMessage1->Recipients->Add();
IdMessage1->Recipients->EMailAddresses = "angelmatillacandas@gmail.com";      //Destinatario

IdSMTP1->Host = "mail.internautas.org";   //Servidor saliente
IdSMTP1->Username = <usuario>";   //Usuario
IdSMTP1->Password = "<clave>";   //Clave
IdSMTP1->Port     = 465;
IdSMTP1->AuthenticationType = atLogin;
IdSMTP1->IOHandler = IdSSLIOHandlerSocket1;

IdSSLIOHandlerSocket1->SSLOptions->Method = sslvTLSv1;
IdSSLIOHandlerSocket1->SSLOptions->Mode   = sslmClient;
try
{
     IdSMTP1->Connect();
     try
     {
          IdSMTP1->Send(IdMessage1);
     }
     catch(...)
     {
          ShowMessage("Se produjo un fallo durante el envío del mensaje");
     }
}
__finally
{
     ShowMessage("El mensaje se envió correctamente");
}

if (IdSMTP1->Connected())
     IdSMTP1->Disconnect();
Y al pasar por el método Connect me da este error:

No se ha cambiado nada en las especificaciones del servidor, pero no sé pro dónde agarrarlo.. He probado todos los valores posibles en SSLOptions->Method.
Responder Con Cita
  #2  
Antiguo 03-05-2016
Avatar de fredo
fredo fredo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Chile, Valparaiso
Posts: 318
Poder: 21
fredo Va por buen camino
SSL, tienes la libreria con el programa?
__________________
^_^

http://stna.cl
Responder Con Cita
  #3  
Antiguo 03-05-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Cita:
Empezado por fredo Ver Mensaje
SSL, tienes la libreria con el programa?
En la carpeta dl ejecutable tengo las dos dll: libeay32 y ssleay32. O ¿te refieres a alguna otra librería?
Responder Con Cita
  #4  
Antiguo 03-05-2016
Avatar de fredo
fredo fredo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Chile, Valparaiso
Posts: 318
Poder: 21
fredo Va por buen camino
efectivamente al libeay32.dll y openssl.exe
__________________
^_^

http://stna.cl
Responder Con Cita
  #5  
Antiguo 04-05-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
He pasado a Indy 10

Bueno. Después de muchas idas y venidas he instalado los componentes de Indy 10, descargados desde https://indy.fulgan.com/ZIP/Indy10_5359.zip (vienen con el instalador para todas las versiones de Builder y Delphi). He modificado el código de la siguiente forma:
Código:
IdMessage1->From->Address = "administracion-socios@internautas.org";   //Remitente
IdMessage1->Subject = "Prueba de envío";
IdMessage1->Body->SetText("Esto es una prueba.");
IdMessage1->Recipients->Add();
IdMessage1->Recipients->EMailAddresses = "angelmatillacandas@gmail.com";      //Destinatario

IdSSLIOHandlerSocketOpenSSL1->PassThrough = true;
IdSMTP1->IOHandler = IdSSLIOHandlerSocketOpenSSL1;
IdSMTP1->Username                  = "<usuario>";
IdSMTP1->Password                  = "<clave>";
IdSMTP1->Host                      = "mail.internautas.org";
IdSMTP1->AuthType                  = satDefault;
IdSMTP1->Port                      = 25;
IdSMTP1->Connect();
IdSMTP1->SendCmd("STARTTLS");
IdSSLIOHandlerSocketOpenSSL1->PassThrough = false;
IdSMTP1->Authenticate();
IdSMTP1->Send(IdMessage1);
Ahora el error que se muestra es este otro:

Y en la carpeta del ejecutable están las librerías SSL
Responder Con Cita
  #6  
Antiguo 04-05-2016
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por fredo Ver Mensaje
efectivamente al libeay32.dll y openssl.exe
Cita:
Empezado por Angel.Matilla Ver Mensaje
En la carpeta dl ejecutable tengo las dos dll: libeay32 y ssleay32. O ¿te refieres a alguna otra librería?
Son los ficheros:
  • ssleay32.dll
  • libeay32.dll

Revisa porque hay diferentes versiones según el sistema (32/64 bits).

Revisa los parámetros que necesitas para conectarte. Te lo digo porque estoy con el mismo tema y he tenido que instslar la versión 10 de las Indy, porque según la autentificación del servidor, no te va a servir con la versión 9, que es la que viene por defecto en Delphi/BCB 6/7.

Revisa este link: http://www.indyproject.org/kb/index....ststarttls.htm
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 04-05-2016 a las 13:41:19.
Responder Con Cita
  #7  
Antiguo 04-05-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Revisa porque hay diferentes versiones según el sistema (32/64 bits).

Revisa los parámetros que necesitas para conectarte. Te lo digo porque estoy con el mismo tema y he tenido que instslar la versión 10 de las Indy, porque según la autentificación del servidor, no te va a servir con la versión 9, que es la que viene por defecto en Delphi/BCB 6/7.

Revisa este link: http://www.indyproject.org/kb/index....ststarttls.htm
Gracias por contestar Neftalí. Me estoy volviendo loco porque no sé, o no acabo de comprender, como obtener esas dos librerías. Tengo instalado W7 64 bits y he instalado Indy 10. He encontrado un montón de sitios donde teóricamente pueden descargarse ambos ficheros en la versión de 64 bits; incluso hay una dirección en indyproject (https://www.openssl.org/source/openssl-1.0.2h.tar.gz) desde la que deberían poderse bajar ambos. Según esa web la última versión estable es la 1.0.2 pero el fichero que hay para mi es un mundo desconocido y no sé como meterle mano. Os agardecería que me ayudarais.
Responder Con Cita
  #8  
Antiguo 04-05-2016
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Las bibliotecas se descargan de http://indy.fulgan.com/SSL/ y, específicamente, debería servirte ésta, que es la de Windows 64bits.

LineComment Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
?Envio de correos ? jasmad Lazarus, FreePascal, Kylix, etc. 16 02-10-2012 15:45:02
Error al enviar correos con TIdSMTP RaulChemical Internet 1 05-03-2008 17:15:46
Detener envío de e-mail con TIdSMTP gluglu Internet 1 18-05-2007 17:13:10
Envio de Correos Masivo Esau Internet 2 10-04-2007 01:46:11
Envio de archivos adjuntos con TIdSmtp murci Internet 3 14-02-2007 13:27:02


La franja horaria es GMT +2. Ahora son las 22:31:18.


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
Copyright 1996-2007 Club Delphi