Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-07-2005
rruffino rruffino is offline
Miembro
 
Registrado: dic 2004
Ubicación: Berrotaran, Cordoba - Argentina
Posts: 215
Poder: 22
rruffino Va por buen camino
Eureka

Tocayo (yo tambien soy Román), has dado en la tecla, lo he probado y hasta ahora anda de maravillas. Gracias por tu tiempo.
Saludos, Román.-
Responder Con Cita
  #2  
Antiguo 09-12-2005
elguille elguille is offline
Miembro
 
Registrado: ene 2005
Posts: 130
Poder: 22
elguille Va por buen camino
Resumo todo lo dicho con una funcion que funciona (comprobado)

añadir a USES

IdBaseComponent, IdComponent, IdTCPServer, IdSMTPServer,
IdMessage, IdEMailAddress, IdTCPConnection, IdTCPClient, IdMessageClient, IdSMTP,idexception

Código Delphi [-]
  procedure email2(host:string;nombre:string;password:string;port:integer;desde:string;
    hasta:string;asunto:string;cuerpo:string;adjunto:string);
  var
      IDSMTP1: TIDSMTP;  // Componente de envio de correo
      mensaje: TIdMessage;
  begin
  IDSMTP1:=TIDSMTP.Create(nil);
  IdSMTP1.AuthenticationType :=atLogin;
  IdSMTP1.UserNAME := nombre;
  IdSMTP1.Password := password;
  IdSMTP1.Host := host;
  IdSMTP1.Port := port;
  MENSAJE:=TIDMESSAGE.CREATE(nil);
  with Mensaje do
  begin
  Body.Add(CUERPO);
  From.Text := desde;
  Recipients.EMailAddresses := hasta;
  Subject := asunto;
  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;
  ENd;

Última edición por dec fecha: 09-12-2005 a las 12:31:27. Razón: ¡¡Encerrad el código fuente entre las etiquetas [DELPHI] ... [/DELPHI]!!
Responder Con Cita
  #3  
Antiguo 09-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.141
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

elguille, no veo que liberes en la función que muestras los objetos "TIdSmtp" y "TIdMessage", y, sin embargo, en su creación no les das dueño: eres tú mismo, el dueño, por tanto, y el encargado de su liberación. En fin, es que me ha llamado la atención, nada más.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 09-12-2005
seba_cipo seba_cipo is offline
Miembro
 
Registrado: oct 2005
Ubicación: Argentina
Posts: 35
Poder: 0
seba_cipo Va por buen camino
elguille:

me tira un error asi
socket error #10051 network is unreacheable

por q es???


cuando llamo el procedi email2 en el parametro

nombre:= mi email
desde:= mi email ???


esta bien eso??
desde ya muchas gracias!
Responder Con Cita
  #5  
Antiguo 09-12-2005
seba_cipo seba_cipo is offline
Miembro
 
Registrado: oct 2005
Ubicación: Argentina
Posts: 35
Poder: 0
seba_cipo Va por buen camino
solucionado,, muchas gracias, el problema era con el host,,
anda joya el procedure de elguille
saludos!
Responder Con Cita
  #6  
Antiguo 08-11-2006
source_code source_code is offline
Miembro
 
Registrado: ene 2005
Posts: 16
Poder: 0
source_code Va por buen camino
Joder, me muestra el adjunto con caracteres en el body, me pone un chorizo de datos.
Mirad os muestro el principio del e-mail que se recibe:

Código:
This is a multi-part message in MIME format --=_NextPart_2rfkindysadvnqw3nerasdf Content-Type: text/plain Content-Transfer-Encoding: 7bit 
 
Hola te paso un documento
 
 
--=_NextPart_2rfkindysadvnqw3nerasdf Content-Type: application/octet-stream; name="documento.doc" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="carta_concejalia.doc" 0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAACAAAA0AAAAAAAAAAA EAAA0gAAAAEAAAD+////AAAAAM4AAADPAAAA//////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////s pcEAcWAJBAAA+BK/AAAAAAAAEAAAAAAABgAAUA8AAA4AYmpianFQcVAAAAAAAAAAAAAAAAAAAAAA AAAKDBYANBgAABM6AQATOgEAUAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD
ya no se que hacer macho.
Responder Con Cita
  #7  
Antiguo 11-01-2007
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 23
AzidRain Va camino a la fama
Muchas gracias por el codigo...muy bueno yo estaba usando el otro componente de NetExpress y gracias a que mi proveedor ya no acepta sesiones SMTP externas tuve que cambiarlo a Indy (que no me gustaba mucho)....Quedo super bien y resolvi en menos de 2 horas el problema..
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #8  
Antiguo 24-08-2007
faustino36 faustino36 is offline
Registrado
 
Registrado: ago 2007
Posts: 3
Poder: 0
faustino36 Va por buen camino
que tal compañeros, soy uevo en este foro y necesito ayuda para enviar mails utilizando los componentes Indy, cheque este codigo y es el que estoy probando, pero marca un error de que no encuentra el host, los parametros que le paso a la funcion son estos:

email2('www.hotmail.com','[email protected]','*****',25,'[email protected]','faustino36@ hotmail.com','Prueba','cuerpo del mail','');

y esta es la funcion:


procedure email2(host:string;nombre:string;password:string;port:integer;desde:string;
hasta:string;asunto:string;cuerpo:string;adjunto:string);
var
IDSMTP1: TIDSMTP; // Componente de envio de correo
mensaje: TIdMessage;
begin
IDSMTP1:=TIDSMTP.Create(nil);
IdSMTP1.AuthenticationType :=atLogin;
IdSMTP1.UserNAME := nombre;
IdSMTP1.Password := password;
IdSMTP1.Host := host;
IdSMTP1.Port := port;
MENSAJE:=TIDMESSAGE.CREATE(nil);
with Mensaje do
begin
Body.Add(CUERPO);
From.Text := desde;
Recipients.EMailAddresses := hasta;
Subject := asunto;
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;
END;

los valores que paso a la funcion son correctos?? o cual es el error???
se agradece su ayuda!!
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


La franja horaria es GMT +2. Ahora son las 21:08:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi