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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-08-2013
Avatar de linuz
linuz linuz is offline
Miembro
 
Registrado: sep 2004
Posts: 88
Poder: 20
linuz Va por buen camino
Lazarus, Indy 10 y gmail.

Buenas a todos,
sé que aquí se habla de Delphi, pero como existe tanta similitud con lázarus pues a ver si alguien puede ayudarme.
Llevo una semana intentando mandar emails con los componentes de Indy 10, el caso es que con un correo con cifrado SSL de pago me manda los emails, pero al pasarle los datos de gmail me da un error al enviar. El error es con STARTTLS, que no se puede iniciar. Tengo las dll's en la carpeta del ejecutable. He cambiado 20 mil cosas, he buscado por el foro, me he bajado el ejemplo de Roman de como enviar emails, y no hay forma.
Gracias de antemano.
Un saludo.
Os dejo el código de la función:

Código Delphi [-]
procedure EnviarMensaje( sUsuario, sClave, sHost, sAdjunto, sAsunto, sDestino, sMensaje: String );
var
   Mensaje: TIdMessage;
   Adjunto: TIdAttachmentfile;
begin
  // Creamos el componente de conexión con el servidor
       with F1 do
begin
  SMTP := TIdSMTP.Create( nil );
  SMTP.Username := sUsuario;
  SMTP.Password := sClave;
  SMTP.Host := sHost;
  SMTP.Port := 587;
  //SMTP.UseTLS:= 'utNoTLSSupport' ;
     IdSSLOpenSSLHeaders.Load;
  IdSSLIOHandlerSocketOpenSSL1.Destination := 'smtp.gmail.com:587';
    IdSSLIOHandlerSocketOpenSSL1.host := 'smtp.gmail.com';
    IdSSLIOHandlerSocketOpenSSL1.port := 587;
    IdSSLIOHandlerSocketOpenSSL1.ssloptions.method := sslvSSLv3;
    IdSSLIOHandlerSocketOpenSSL1.ssloptions.mode := sslmUnassigned;
 
  end;
 // SMTP.IOHandler := f1.IdSSLIOHandlerSocketOpenSSL1;
 // SMTP.AuthType:= atDefault;
  // Creamos el contenido del mensaje
  Mensaje := TIdMessage.Create( nil );
  Mensaje.Clear;
  Mensaje.From.Name := sDestino;
  Mensaje.From.Address := sDestino;
  Mensaje.Subject := sAsunto;
  Mensaje.Body.Text := sMensaje;
  Mensaje.Recipients.Add;
  Mensaje.Recipients.Items[0].Address := sDestino;
  // Si hay que meter un archivo adjunto lo creamos y lo asignamos al mensaje
  if sAdjunto <> '' then
  begin
    if FileExists( sAdjunto ) then
      Adjunto := TIdAttachmentfile.Create( Mensaje.MessageParts,sAdjunto );
  end
  else
    Adjunto := nil;
  // Conectamos con el servidor SMTP
  try
    if f1.SMTP.Connected then
    f1.SMTP.Disconnect;
    f1.SMTP.Connect;
  except
    raise Exception.Create( 'Error al conectar con el servidor.' );
  end;
  // Si ha conectado enviamos el mensaje y desconectamos
  if f1.SMTP.Connected then
  begin
    try
 
      f1.SMTP.Send( Mensaje );
    except
      raise Exception.Create( 'Error al enviar el mensaje.' );
    end;
    try
      f1.SMTP.Disconnect;
    except
      raise Exception.Create( 'Error al desconectar del servidor.' );
    end;
  end;
  // Liberamos los objetos creados
  if Adjunto <> nil then
    FreeAndNil( Adjunto );
  FreeAndNil( Mensaje );
  FreeAndNil( f1.SMTP );          
end;

Última edición por Ñuño Martínez fecha: 14-08-2013 a las 12:11:13. Razón: Corrigiendo formateo del código Delphi (¿Vuelve a fallar el add-on?)
Responder Con Cita
 



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 con Indy 10 y GMail ssl camino Internet 7 01-10-2012 21:58:25
GMail, Delphi 6, Indy 10.5.8.0, SSL y otras hierbas Cabanyaler Internet 7 16-03-2012 10:22:17
Enviar mensaje desde gmail con Indy 10 axelafonso Internet 3 13-01-2012 18:11:39
Imap de indy + gmail Enan0 Internet 0 10-02-2010 08:35:02
Enviar correo con SMTP de GMAIL via INDY 10 (idSMTP) lpedrazzi Internet 4 31-12-2006 22:30:26


La franja horaria es GMT +2. Ahora son las 14:10:08.


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