Ver Mensaje Individual
  #1  
Antiguo 13-02-2007
murci murci is offline
Miembro
 
Registrado: jul 2003
Ubicación: Murcia
Posts: 43
Reputación: 0
murci Va por buen camino
Envio de archivos adjuntos con TIdSmtp

Hola a todos, despues de ver distintos hilos sobre el tema, no he encontrado la solucion a mi problema. Os explico, tengo un procedimiento para enviar correos electronicos desde un aplicacion, pudiendo adjuntar archivos. Pues bien, los mails que envio sin fichero adjunto, llegan perfectamente, mientras que los que llevan un archico adjunto, no hay manera de que lleguen a su destino, aunque el TIdSmtp no devuelva error al enviarlos.

Uso TidSmtp de las Indy 9 y delphi 7.

El codigo del procedimiento es el siguiente:
Código:
procedure TForm1.Button1Click(Sender: TObject);
var
  mail : TIDMessage;
  smtp : TIdSMTP;
begin
  smtp := TIdSMTP.Create(self);
  // ASIGNO EVENTOS
  smtp.OnWork := mailEvent.OnWork;
  smtp.OnWorkBegin := mailEvent.OnWorkBegin;
  smtp.OnWorkEnd := mailEvent.OnWorkEnd;
  smtp.OnStatus := mailEvent.OnStatus;
  smtp.Name := 'Smtp';
  // CONFIGURACION DEL SERVIDOR AL QUE SE ENVIA EL CORREO
  with smtp do begin
    AuthenticationType := atLogin;
    Host := eHost.Text;
    port := 25;
    Username := eUser.Text;
    Password := ePass.Text;
  end;

  mail := TIdMessage.Create(Self);
  // CONFIGURACION DEL MENSAJE A ENVIAR
  with mail do begin
    From.Address := eFromAddres.Text;
    Recipients.EMailAddresses := eMailAddres.Text;
    Subject := eSubject.Text;
    body.text := eBody.Text;
  end;

  IF ABRIR.Execute then
    if FileExists(abrir.FileName) then 
      TIdAttachment.create(mail.MessageParts,abrir.filename);

  try
    // CONEXION CON EL SERVIDOR DE CORREO
    smtp.Connect(10000);
    try
      // ENVIO DEL MENSAJE
      smtp.Send(mail);
    except
      on E: Exception do
         ShowMessage('Fallo al enviar: ' + E.Message);
    end;
  finally
    if SMTP.Connected then SMTP.Disconnect;
    smtp.free;
    mail.free;
  end;
end;
Bueno, a ver si alguien ve una posible razon para todo este entuerto que me esta volviendo loco.

Muchas gracias a todos por perder el tiempo con mi problema.
__________________
J. Adolfo Núñez
Responder Con Cita