Ver Mensaje Individual
  #2  
Antiguo 24-04-2015
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Reputación: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Con las INDY puedes enviar correos de manera bastante sencilla.

Código Delphi [-]
// Componentes Indy
     // (Pestaña Indy Clients en Delphi6)
     SMTP: TIdSMTP;
     // (Pestaña Indy Misc en Delphi6)
     Mail: TIdMessage;

// inicio el servidor SMTP
  with SMTP do
  begin
     Host := aHostSmtp ;
     UserID := aUserID;
     Password := aPassword;
     Port := aPort;
     SocksInfo.Authentication := saNoAuthentication;
     AuthenticationType := atNone;
     if aIdentificacion = True then
     begin
        AuthenticationType := atLogin;
        SocksInfo.Authentication := saUsernamePassword;
        SocksInfo.Host := aHostSmtp ;
        SocksInfo.Password := aPassword;
        SocksInfo.Port := aPort;
        SocksInfo.UserID := aUserID;
     end;
  end;

// Creo el mensaje de correo
  with Mail do
  begin
     Clear;
     UseNowForDate := True;
     From.Address := aFromAddress;
     From.Name := aFromName;
     Organization := aOrganization;
     if (EMailAddresses = '') then
        raise Exception.Create(_('El destinatario no tiene e-mail...'));
     Recipients.EMailAddresses := aEMailAddresses;
     Subject := aSubjectMail;
     Body.Clear;

     // Construyo el mensaje
     Body.Text := 'Hay una factura por firmar';
  end;

// Envio
  with SMTP do
  begin
     try
        Connect;
     except
        Disconnect;
        raise Exception.Create(_('Se ha producido un error al intentar la conexión.'));
     end;

     try
        Send(Mail);
     except
        Disconnect;
        raise Exception.Create(_('Se ha producido un error al intentar enviar el mensaje.'));
     end;

     Disconnect;
  end;

Última edición por duilioisola fecha: 24-04-2015 a las 10:32:40.
Responder Con Cita