Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-05-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
Problemas al enviar Email

Hola amigos del foro:

Les agradeceria mucho que me ayudaran a resolver un problema que tengo, les cuento necesito mandar un email y probado con muchos componentes(Indy,Fassnet) y ninguno ha solucionado mi problema.. a lo mejor proporciono mal los datos como : host, usuario,etc..

por ejemplo componentes Indy

Código Delphi [-]
  
//En el caso de un servidor GMAIL
  IDSMTP1:=TIDSMTP.Create(nil);
  IdSMTP1.AuthenticationType :=atLogin;
  IdSMTP1.UserNAME := micuenta@gmail.com; //me imagino que es la misma
                                                              //que la de mi correo gmail 
 
  IdSMTP1.Password := 123456;                   //me imagino que es el mismo
                                                              //que la de mi correo gmail 
  IdSMTP1.Host := smtp.gmail.com;
  IdSMTP1.Port := 25;
 
  with Mensaje do
  begin
  Body.Add(CUERPO);
  From.Text := micuenta@gmail.com
  Recipients.EMailAddresses := miamigo@hotmail.com
  Subject := 'para probar';
  Priority := TIdMessagePriority(mpHighest);//prioridad del mensaje
  CCList.EMailAddresses := '';
  BccList.EMailAddresses := '';
  TIdAttachment.Create(Mensaje.MessageParts,adjunto);
  end; //configuracion server smtp

  with idsmtp1 do
  begin
   try
      Connect;
      try
        // Envio el mensaje.
        Send(Mensaje);
      finally
        Disconnect;
      end;
  //    MessageDlg('Enviado Correctamente', mtInformation, [mbOK], 0);
    except
       // Capturo algunas excepciones que pueden ocurrir
      ON E: EIdProtocolReplyError do begin
      MessageDlg('No se ha podido enviar el email.' + #13 +
            'Incorrecto el email o el usuario o la password.', mtError, [mbOK], 0);
      end;
      on E: EFOpenError do begin
      MessageDlg('No se ha podido enviar el email.' + #13 +
            'Fichero Adjunto desconocido o erróneo.', mtError, [mbOK], 0);
      end;
      on E: EIdSocketError do begin
      MessageDlg('No se ha podido enviar el email.'+ #13 +
            'Host desconocido o incorrecto.', mtError, [mbOK], 0);
      end
      else begin
      MessageDlg('Fallo en el envio de email', mtError, [mbOK], 0);
      end;
    end;
  end;

tambien lo intente con un correo hotmail y tuve el mismo problema

muchas gracias por su valiosa ayuda...

Última edición por dec fecha: 06-05-2007 a las 16:58:55.
Responder Con Cita
  #2  
Antiguo 05-05-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 19
droguerman Va por buen camino
bueno no he llegado a usar componentes Indy, pero si sé que si envias un mail solo con la data no es procesado por gmail o hotmail, necesitas añadir a tu mensaje un encabezado parecido a este:

From: "TU Nombre" <tucorreo@tuserver>
Return-Path: "direccion retorno" <tucorreo@tuserver>
To: "Nombre de tu destino <destino@elserverdestino>"
Subject: el asunto
Date: 2-2-2007
MIME-Version: 1.0
Content-Type: text/html;
format=flowed;
charset="iso-8859-1;"
reply-type=original
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-MSMail-Priority: Normal
<aqui hay que darle dos enters>
<aqui viene tu mensaje>

ahora a mi solo me ha funcionado llegando como spam pero llega, revisa si existe alguna forma de añadir encabezados a tu correo
__________________
self.free;
Responder Con Cita
  #3  
Antiguo 05-05-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

También puede ser que sea menester usar de cierto modo el protocolo SSL, que es el que usa Gmail. Aquí tienes un ejemplo del compañero Román.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 05-05-2007
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 20
basti Va por buen camino
Además de lo que dice dec, tienes que cambiar el puerto del SMTP, en Gmail es el 465.
Responder Con Cita
  #5  
Antiguo 05-05-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
Talking muchas gracias

gracias por su ayuda, disculpen que siempre los este molestando..
Responder Con Cita
  #6  
Antiguo 05-05-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
Red face sigo con problemas..

el ejemplo del amigo roman se ve muy bueno, pero me olvide de decirles, que estoy utilizando delphi 7, por lo que hay algunos propiedades que no poseen la version de los indy para delphi 7, lo que produce errores...jijiji..

muchas gracias..
Responder Con Cita
  #7  
Antiguo 05-05-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Tienes la opción de instalar la versión 10 de los componentes Indy, pero, con la versión 9 (conque cuentas en Delphi 7) también es posible enviar correos utilizando el SMTP de GMail con tu propia cuenta de usuario. El ejemplo que adjunto necesita también de las librerías que menciona Román anteriormente. Todas las propiedades de los componentes implicados son las que traen estos por defecto, excepto las que he cambiado en el propio código fuente.
Archivos Adjuntos
Tipo de Archivo: zip Enviar correo con SMTP de Gmail (con Indy 9).zip (2,8 KB, 176 visitas)
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #8  
Antiguo 25-07-2012
marcial marcial is offline
Miembro
 
Registrado: may 2003
Posts: 147
Poder: 21
marcial Va por buen camino
El Archivo ZIP está dañado. ¿Sería posible sustituirlo por el correcto pues me sería de muchisima ayuda?
Gracias
Marcial
Responder Con Cita
  #9  
Antiguo 25-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hola, lo acabo de probar y funciona bien, ¿qué problema tienes?
Responder Con Cita
  #10  
Antiguo 25-07-2012
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
Yo también lo puedo abrir sin problemas usando IZarc y desde Firefox.

// Saludos
Responder Con Cita
  #11  
Antiguo 25-07-2012
marcial marcial is offline
Miembro
 
Registrado: may 2003
Posts: 147
Poder: 21
marcial Va por buen camino
Pues Ejemplo.dpr Ejemplo.res y Limpiar.bat parece ser que están dañados
Luego, en el directorio frm, el UfrmPrincipal.dfm tampoco lo descomprime
Este es el mensaje que me da el winrar.

! C:\ADAROS\ProgramasAuxiliares\SSL\Enviar correo con SMTP de Gmail (con Indy 9).zip: El archivo está dañado
! C:\ADAROS\ProgramasAuxiliares\SSL\Enviar correo con SMTP de Gmail (con Indy 9).zip: El archivo está dañado

Gracias
Responder Con Cita
  #12  
Antiguo 25-07-2012
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
Yo veo bien todos los archivos. ¿Con cual navegador estás descargando el zip? ¿Has probado usar IZarc en lugar de WinRar?

// Saludos
Responder Con Cita
  #13  
Antiguo 26-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Lo he descargado otra vez, lo he descomprimido, he abierto cada fichero del mismo y lo he vuelto a comprimir, ahora en formato .rar

Lo he puesto aquí, por si quieres probar si te funciona.
Responder Con Cita
  #14  
Antiguo 26-07-2012
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 484
Poder: 17
Neeruu Va por buen camino
Cool

Hola a todos...

Cita:
Empezado por dec Ver Mensaje
También puede ser que sea menester usar de cierto modo el protocolo SSL, que es el que usa Gmail. Aquí tienes un ejemplo del compañero Román.
Para mandar email con gmail se necesita enviarlos con seguridad ssl... por eso también cambia el puerto de 25 a 465.
Con buscar las dll y ponerlas en la misma carpeta que el ejecutable ya esta...

En el create de tu formulario agregas.
Código Delphi [-]
procedure TFrmEMail.FormCreate(Sender: TObject);
begin
  IdSSLOpenSSLHeaders.Load;
end;
y agregas la Unit: IdSSLOpenSSLHeaders.

Ahora algunas dolores de cabezas que puedes ahorrar (Por supuesto, todos en la maquina del cliente, porque en la propia siempre anda todo.... )

1 - Si no te se conecta, prueba bajar el antivirus.
2 - Si no te carga las dll, prueba bajar el antivirus.
3 - Y una vez descartado el antivirus, te comento un caso que no tengo ni ideas porque, pero bueno:

Realice un modulo de envio de mail, con delphi 2010, indy 10.5.5, y las dll de ssl las baje de http://indy.fulgan.com/SSL/, en mi maquina (Windows Seven )envía sin ningún problema.
Ahora en la maquina de mi cliente con Windows server 2008 R2, primero no cargaba las dll por el antivirus, despues que desactive el antivirus seguia sin cargar , entonces busque otras dll en http://www.openssl.org/ y segui el problema, entonces busque otras dll en http://slproweb.com/products/Win32OpenSSL.html... Aclaro que son todas las mismas versión pero descargadas de distintos lugares... incluso algunas pesaban mas que otras...

Cuando logre que cargue las dll, seguí probando, con algunas me daba el error "Connection Time-out Error Socket 10060"...
Y así probando, porque no recuerdo de donde descargue las dll que quedaron, solucione el problema....

Aclaro que, una vez que realice el modulo, lo pase a mi cliente, y todo esto lo realice solo cambiando las dll... con esto quiero decir que no era un error de programación... sino que por alguna razón las mismas dll, con el mismo ejecutable y las misma cuenta de correo, no andan igual en distintas maquinas...

Los dos grandes problemas que tuve son:
1 - No cargaba la dll (Por el antivirus y por la versión de dll) (socket error 10013).
2 - Tiempo de Respuesta agotado (Connection Time-out)

Espero que te sirva....

Saluda Atte Neeruu!!!
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Enviar EMail ( Sin Componentes ) n3ck Internet 5 24-02-2009 19:52:44
¿Por qué no puedo enviar el Email? Turboleta Internet 4 06-02-2006 00:03:41
enviar email con bcc raulmm26 Internet 1 03-11-2005 11:38:55
Enviar Email satabel Internet 1 02-08-2005 02:12:56
spam al enviar email seb@ Internet 4 27-04-2005 08:04:32


La franja horaria es GMT +2. Ahora son las 10:30:52.


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