Club Delphi  
    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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-11-2006
amadis amadis is offline
Miembro
 
Registrado: may 2005
Ubicación: San José, Colón, Entre Ríos, Argentina
Posts: 315
Poder: 19
amadis Va por buen camino
Red face Enviar Mail con Indy + mostrar avance progressbar

Como andan Gente!

Estoy intentando mandar mail desde un simple programa, con un codigo que saqué de un hilo

Código Delphi [-]
uses
   IdSMTP, IdMessage;
   
 procedure TForm1.Button1Click(Sender: TObject);
 var
   smtp: TIdSMTP;
   mail: TIdMessage;
 begin
   smtp := TIdSMTP.Create(Self);
   mail := TIdMessage.Create(Self);
   
   with smtp do
   begin
     Port := 25;
     Host := 'smtp.servidorcorreo.es';
     Username := '';
     Password := '';
   end;
   
   with mail do
   begin
     Recipients.Add;
     Recipients[0].Name := 'destinatario';
     Recipients[0].Address := 'correo@destinatario.com';
     From.Name := 'remitente';
     From.Address := 'correo@remitente.com';
     Subject := 'Asunto del correo';
     Body.Text := 'Cuerpo del correo';
   end;
   
   TIdAttachment.Create(mail.MessageParts, 'C:\adjunto.txt');
   
   smtp.Connect(30000);
   try
     try
       smtp.Send(mail);
     except
       on E: Exception do
         ShowMessage(E.Message);
     end;
   finally
     if smtp.Connected then
       smtp.Disconnect;
   end;
 
   mail.Free;
   smtp.Free;

Eso funciona bien pero cuando envio un adjunto de mas de 100kb
el programa tarda en enviarlo y si por ej enviara un archivo de 500kb
el programa deja de responder por unos 3 minutos y aparenta estar colgado.

Es posible anexar a ese codigo un PROGRESSBAR? que avance junto con el envio del mail?
Y que concida, porque yo no se cuanto va a tardar ese mail en enviarse.

Entonces de esa forma la persona que este enviando el mail sabría cuanto
debe esperar y tendria mejor aspecto el programa.
end;
Responder Con Cita
  #2  
Antiguo 14-11-2006
oscarnoe oscarnoe is offline
Miembro
 
Registrado: jul 2006
Posts: 60
Poder: 18
oscarnoe Va por buen camino
Hola amadis,

Coloca un idantifreeze en el form, ademas deberias usar los eventos onStatus (para comprobar el tipo de accion realizada), onWork, onWorkBegin y onWorkEnd de TIdsmtp, para implementar la barra de progresos.
Lo ideal seria crear un form aparte que crees tu dinamicamente y que tenga ya los eventos preparados para el idSmtp, solo asignar el idSmtp y listos.

Espero que te sea de ayuda.

Oscar Noe
__________________
No dejes camino viejo por sendero nuevo

Última edición por oscarnoe fecha: 14-11-2006 a las 15:00:35.
Responder Con Cita
  #3  
Antiguo 18-04-2007
molinero1 molinero1 is offline
Miembro
 
Registrado: abr 2007
Posts: 59
Poder: 17
molinero1 Va por buen camino
Hola, he intentado servir tus lineas de codigo, he comentado la linea de
TIdAttachment.Create(mail.MessageParts, 'C:\adjunto.txt');
y he cambiado --> Recipients[0].Address := <-- a la direccion de correo que queria enviar el mail y me dice que Socket Error # 11004. Alguien sabe como solucionar el error?
Responder Con Cita
  #4  
Antiguo 23-11-2007
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Hola a todos , estoy intentando lo mismo que ud. pero el error me sale socket error #11004 a que se debera este error sera un problema de configuracion o que , el error lo lanza el esta linea smtp.Connect(30000);

Es programa esta copiado igual , salvo que las configuraciones cambian

Gracias de antemano por sus ayudas
__________________
IVAND
Responder Con Cita
  #5  
Antiguo 23-11-2007
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
me respondo yo mismo , les cuento que el error era de configuracion en la linea el smt.xxx solo debia ponerse xxx

Gracias de antemano
__________________
IVAND
Responder Con Cita
  #6  
Antiguo 24-11-2007
fide fide is offline
Miembro
 
Registrado: oct 2006
Posts: 331
Poder: 18
fide Va por buen camino
Lightbulb Motrar progreso.

Bueno, eso de mostrar el progreso yo creo que si se puede hacer, pero yo no se como. Ahora bien, yo hasta ahora lo que hago es colocar un idAntiFreeze y ahi mismo, cuando presiono en boton "Enviar Mail", pues muestro una ventana que dice, por favor espere, y muestra una barra pero no que se llena, sino como la del buscar de Windows, que para de un lado para otro. y cuando se termina el trabajo, o ocurre un error, pues yo quito la ventana y notifico lo que ha sucedido. Por lo menos asi me esta funcionando bien...
Responder Con Cita
  #7  
Antiguo 06-01-2010
Martinacho Martinacho is offline
Registrado
 
Registrado: nov 2008
Posts: 1
Poder: 0
Martinacho Va por buen camino
idAntifreeze

Cita:
Empezado por fide Ver Mensaje
Bueno, eso de mostrar el progreso yo creo que si se puede hacer, pero yo no se como. Ahora bien, yo hasta ahora lo que hago es colocar un idAntiFreeze y ahi mismo, cuando presiono en boton "Enviar Mail", pues muestro una ventana que dice, por favor espere, y muestra una barra pero no que se llena, sino como la del buscar de Windows, que para de un lado para otro. y cuando se termina el trabajo, o ocurre un error, pues yo quito la ventana y notifico lo que ha sucedido. Por lo menos asi me esta funcionando bien...
Hola, soy nuevo aquí y me gustaría saber como funciona un idAntiFreeze, y mucho mejor como lo has acoplado a tu barra tipo windows. Muchísimas gracias de antemano. Mi correo es : martinacho@orange.es
Responder Con Cita
  #8  
Antiguo 03-02-2010
Avatar de lbidi
lbidi lbidi is offline
Miembro
 
Registrado: oct 2003
Ubicación: Montevideo- URUGUAY
Posts: 417
Poder: 21
lbidi Va por buen camino
Hola, he utilizado este codigo y funciona muy bien.

Necesito mandar emails con adjuntos por lo tanto he probando con el

comando que esta en este codigo TIdAttachment, pero no me compila.

Que mas necesito agregar ??

Gracias
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con archivos adjuntos y cuerpo de mail en indy razadi Internet 4 14-09-2006 10:56:37
¿Recibir mail con MailClient de las Indy con SSL? NPIdea Internet 0 25-11-2005 10:05:10
enviar mail amadis API de Windows 2 06-05-2005 05:02:02
Indy - Mail Display? jodycom Internet 2 05-04-2005 17:41:42
Problemas al descargar un Mail con los Indy Fizban Internet 8 09-09-2004 00:05:48


La franja horaria es GMT +2. Ahora son las 12:26:07.


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