Ver Mensaje Individual
  #1  
Antiguo 08-05-2008
Avatar de jcarteagaf
[jcarteagaf] jcarteagaf is offline
Miembro Premium
 
Registrado: abr 2006
Ubicación: La Paz, Bolivia
Posts: 651
Reputación: 19
jcarteagaf Va por buen camino
Problema al enviar Mail

Hola, estoy haciendo un programa que debe enviar un mail con un archivo adjunto. Estoy usando Delphi 7 y las Indy 10. He usado un ejemplo que pusieron aca.

Mi codigo es el siguiente:

Código Delphi [-]
 gcUsuarioCorreo.ReadParams;
  if not gcUsuarioCorreo.CheckParams then
  begin
    Mensajeerror('No se definió los parametros de Envio de Datos');
    actSetup.Execute;
    exit;
  end;
  with idMessage do
  begin
    Clear;
    Body.Clear;
    Body.Add('COMPENSA: Los datos adjuntos corresponden al '+FormatDateTime('dd/mm/yyyy',date));
    From.Address := gcUsuarioCorreo.Correo;
    Recipients.EMailAddresses := 'jcafcompensa@yahoo.com';
    Subject := 'Datos correspondientes al '+FormatDateTime('dd/mm/yyyy',date);
    Priority := TidMessagePriority(mpHigh);
    TidAttachmentFile.Create(idMessage.MessageParts,sFileZip);
  end;
  with idSMTP do
  begin
    Username := gcUsuarioCorreo.Usuario;
    Password := gcUsuarioCorreo.Password;
    Host := gcUsuarioCorreo.Host;
    Port := gcUsuarioCorreo.Puerto;
    if Not Connected then
      Connect();
    try
      try
        Controles(true);
        IdSMTP.Send(IdMessage);
      finally
        Controles(false);
        Disconnect;
      end;
      MensajeError('Enviado Correctamente');
    except
      ON E: EIdReplyError do
      begin
        MensajeError('No se ha podido enviar el email.' + #13 +
            'Incorrecto el email o el usuario o el password.');
      end;
      on E: EFOpenError do
      begin
        MensajeError('No se ha podido enviar el email.' + #13 +
          'Fichero Adjunto desconocido o erróneo.');
      end;
      on E: EIdSocketError do
      begin
        MensajeError('No se ha podido enviar el email.'+ #13 +
           'Host desconocido o incorrecto.');
      end
      else
      begin
        MensajeError('Fallo en el envio de email');
        raise;//para que muestre el error.
      end;
    end;
    if connected then
      Disconnect;
  end;
Sin embargo al momento de ejecutar el programa lanza el siguiente erro:
Must Issue a STARTTLS command first

Alguien podria darme una mano con esto. Gracias.
Responder Con Cita