![]() |
Enviar correos y adjuntar archivos...
Tengo una aplicacion en Delphi 5 que genera un reporte con datos de los clientes los convierte en *.PDF y los envia adjunto por correo. Para esto utiliza los componentes FastNet. Ahora yo quiero pasar la aplicacion a Delphi 7 y necesito rehacer esta parte. Entonces fui a la pag. de los Indy, me baje un ejemplo de la version 9, Delphi 7 trae los INDY version 9, pero no funciona el ejemplo, el error es similar a cuando no se tiene intalado algun componente. Descargue la vers. mas reciente de los INDY 9, los instale y me paso lo mismo.
Lo que deseo es crear una aplicacion que me adjunte archivos y envie correos, alguien sabe como? Si es acompañado de un ejemplo mejor... Saludos.Gracias. |
Hola,
No sé hasta qué punto te valdría un ejemplo, puesto que si en este se hace uso de los componentes que mencionas tal vez tampoco te funcionaría... Creo que podrías ser más explícito con el error que te aparece. Adjuntar un archivo a un "TIdMessage" (hablamos de los componentes Indy) no tiene mayor misterio:
Donde "email" es un objeto de tipo "TIdMessage". En la misma unidad (IdMessage.pas) en que se declara "TIdMessage" se encuentra también la clase "TIdAttachment". |
Hola,
Esto no me va mal en Delphi 7 con Indy 9.
|
agradecimiento
gracias, pude adjuntar los archivos.
¿como hago para subir al sitio todo el formulario completo con el codigo para que lo utilice alguien mas cuando lo necesite? |
Hola,
Podrías comprimir el o los archivos necesarios y adjuntar el archivo comprimido en un mensaje en este mismo Hilo. Fíjate al enviar el mensaje en el formulario de edición del mismo, abajo de los botones "enviar" y "vista previa", tienes lo necesario para administrar los archivos adjuntos al mensaje que luego puedes enviar. |
muy bueno
hermano de delphi me parece muy bueno tu ejemplo pero quiero que me ayudes en algo resulta ser que donde declaras las variables que pones
var smtp: TIdSMTP; mail: TIdMessage; mi delphi que es el 7 tambien no me reconoce la variable mail como el tipo ese que especificas TIdMessage por tanto la aplicacion no me funciona dime que puede ser eso por que si es un componente que se encuentra en la paleta de componentes de la Indy en mi delphi no viene o tengo que agregar esa libreria?? si me puedes ayudar aqui estare gracias. |
respuesta correo electronico en d7
aca te mando una zip con el ejemplo en d7
|
correo
lo siento compañero pero el zip de donde lo puedo bajar?? no me das un vinculo ni nada semejante para la descarga de todas formas ya resolvi lo pricipal que era adjuntar un archivo y cargar el outlook express ahora lo que necesito es alguna forma de que el paso de cargar el outlook express me lo quite o sea con solo darle enviar dentro de la aplicacion automaticamente envie sin tener que cargar el outlook express
si me puedes ayudar ya sabes estare aqui y gracias por la ayuda. |
hola, yo tengo delphi 6 enterprise y este codigo no me funciona, existe algo diferente para esta version o las clases no funcionan aqui?
|
Cita:
|
Enviar archivos adjuntos
que tal foro:
tengo un problema al tratar de enviar los archivos adjuntos, uso delphi 2009 y componentes indy 10.2 o los que vienen por default si envia el ccorreo y todo, pero los archivos que llegan adjuntos vienen con extensión .dat, y eso es una lata, no se si a alguien ya le paso y que pudiera darm eun pocco de luz al respecto. añado mi codigo para enviar los correos: with IdMessage do begin Body.Assign(dbMemo1.Lines); From.Text := UserEmail; ReplyTo.EMailAddresses := UserEmail; Recipients.EMailAddresses := edtemailcte.Text; { To: header } Subject := UserName; { Subject: header } //Priority := TIdMessagePriority(cboPriority.ItemIndex); { Message Priority } //CCList.EMailAddresses := edtCC.Text; {CC} //BccList.EMailAddresses := edtBCC.Text; {BBC} //if chkReturnReciept.Checked then // begin {We set the recipient to the From E-Mail address } // ReceiptRecipient.Text := From.Text; // end //else // begin {indicate that there is no receipt recipiant} ReceiptRecipient.Text := ''; // end; end; {authentication settings} // case SmtpAuthType of // 0: idSMTP.AuthType := atNone; // 1: idSMTP.AuthType := atDefault; {Simple Login} //end; idSMTP.Username := SmtpServerUser; idSMTP.Password := SmtpServerPassword; {General setup} idSMTP.Host := SmtpServerName; idSMTP.Port := SmtpServerPort; {now we send the message} idSMTP.Connect; try idSMTP.Send(IdMessage); finally idSMTP.Disconnect; MessageDlg('Correo enviado satisfactoriamente',mtInformation,[mbOk],0); end; |
Bienvenido a clubdelphi, como siempre aconsejamos a los nuevos, no olvides leer nuestra guía de estilo, gracias por tu colaboración :)
Has incumplido un montón de normas de los foros, es normal, no lo sabías, por eso te indico que leas nuestra guía de estilo :) Y después crea un hilo nuevo con tu duda, le pones un título descriptivo y explicas lo más detalladamente tu problema. Y recuerda poner los tags al código fuente, ejemplo: ![]() Gracias :) Cita:
|
muy buenas, en el ejemplo primero al copiarlo en delphi 2010 me sale:
undeclare identifier TIdAttachment y se subraya en rojo en esta linea TIdAttachment.Create(mail.MessageParts, 'C:\adjunto.txt'); ¿que ocurre? ¿me falta algo? gracias |
hola dec buenas noches, espero me puedan ayudar. yo estoy intentando enviar un documento de excel. esto es un parte de mi codigo
DATA.From.Address := username; DATA.Recipients.EMailAddresses := totarget; DATA.subject := subject; DATA.body.text := body; DATA.ContentType := 'application/ms-excel'; DATA.LoadFromFile('C:\archivo.xlsx'); SMTP.IOHandler := SSL; SMTP.Host := 'smtp.gmail.com'; SMTP.Port := 587; SMTP.username := username; SMTP.password := password; SMTP.UseTLS := utUseExplicitTLS; SMTP.Connect; SMTP.Send(DATA); SMTP.Disconnect; tambien he intentado con lo que sugieres pero me da el siguiente error: Constructing instance of 'TIdAttachment' containing abstract method 'TIdAttachment.OpenLoadStream' espero me puedan ayudar de ante mano muchas gracias. Saludos cordiales! |
Recuerda poner los tags al código fuente, ejemplo:
![]() Gracias :) |
TIdAttachment no funciona en delphi 7 con indy 9. sabes como seria para adjuntar un archivo de excel.
de ante mano gracias! |
¿Cómo que no funciona?
|
Enviar archivo de excel por email
Hola gracias por responder. Mi problema es que no puedo enviar un archivo de excel adjunto.
El siguiente codigo lo utilizo y envio el correo electrónico a la perfección siempre y cuando quite esta linea: TIdAttachment.Create (DATA.MessageParts, '1.JPG'); no se como seria para adjuntar un archivo de excel. espero me puedan orientar, utilizo delphi xe7 y gracias!:)
El error que obtengo es el siguiente. [dcc32 Warning] Unit2.pas(66): W1020 Constructing instance of 'TIdAttachment' containing abstract method 'TIdAttachment.OpenLoadStream' Gracias de nuevo |
envio de correo
Hola Buscadno otra cosa vi este pos, aca le mando la rutina que uso desde que tenia delphi 5 y ahora uso XE5 y siempre me anduvo:
en el form use dos componentes de las Indiy uno que dice TidMessage y otro TidSMPT y desde las pantalla que uso para enviar hago esto en un boton o lo que Uds,.Quieran
Yo Uso FastReport lo que hago es enviar a pdf y luego lo adjunto Espero que sirva Luis Roldan Mar del Plata Argentina |
La franja horaria es GMT +2. Ahora son las 21:44:40. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi