¿Alguna funcion para enviar email desatendido xHarbour?
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
¿Alguna funcion para enviar email desatendido xHarbour?
Hola a todos. Feliz Tarde de Domingo-
¿Puede alguien darme una mano para enviar emails desatendido con FW17.01+xHarbour?
Lo que necesito es que el sistema envie un correo con datos predeterminados y en tiempo de ejecucion, y que sea transparente para el usuario, o sea en segundo plano.
Alguna funcion y codigo de ejemplo?
Agradecido de antemano con todos.
¿Puede alguien darme una mano para enviar emails desatendido con FW17.01+xHarbour?
Lo que necesito es que el sistema envie un correo con datos predeterminados y en tiempo de ejecucion, y que sea transparente para el usuario, o sea en segundo plano.
Alguna funcion y codigo de ejemplo?
Agradecido de antemano con todos.
"Los errores en programación, siempre están entre la silla y el teclado..."
- VictorCasajuana
- Posts: 30
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Contact:
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Para enviarlos en segundo plano, creo que la solución es utilizar threads.
Hay un ejemplo en \samples\threads.prg
Hay un ejemplo en \samples\threads.prg
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Hola Victor.
Gracias por tu ayuda.
Ya revise lo que me indicaste pero no veo nada parecido a envios de email.
A menos que yo no entienda de que se trata ese .PRG
Igual sigo buscando...
Muchas Gracias por la colaboracion. Si tienes alguna otra sugerencia, quedo al pendiente.
Saludos.
Gracias por tu ayuda.
Ya revise lo que me indicaste pero no veo nada parecido a envios de email.
A menos que yo no entienda de que se trata ese .PRG
Igual sigo buscando...
Muchas Gracias por la colaboracion. Si tienes alguna otra sugerencia, quedo al pendiente.
Saludos.
"Los errores en programación, siempre están entre la silla y el teclado..."
- VictorCasajuana
- Posts: 30
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Contact:
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
NO.VictorCasajuana wrote:Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Saludos.
João Santos - São Paulo - Brasil
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
OOOOkkkkk... gracias por la aclaratoria.. eso tambien es importante, que no se detenga la ejecucion del programa. ya estaba pensando colocar un meter, con eso que dices no hace faltaVictorCasajuana wrote:Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Mil gracias de nuevo victor !!
"Los errores en programación, siempre están entre la silla y el teclado..."
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
¿¿ NO ??karinha wrote:NO.VictorCasajuana wrote:Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Saludos.
"Los errores en programación, siempre están entre la silla y el teclado..."
- VictorCasajuana
- Posts: 30
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Contact:
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
de nada Jose, un apunte al respecto, utilizar Threads da mucha posibilidades pero has de tener cuidado con algunas cosas, piensa que son varios procesos paralelos que ejecuta tu aplicación. dichos procesos utilizarán las mismas variables públicas y si utilizas CLASSDATA también. Controla bien esto o te puede llevar un quebradero de cabeza al principio. También tienes forma de "matar" los procesos y comunicarte entre ellos.JoseAlvarez wrote:OOOOkkkkk... gracias por la aclaratoria.. eso tambien es importante, que no se detenga la ejecucion del programa. ya estaba pensando colocar un meter, con eso que dices no hace faltaVictorCasajuana wrote:Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Mil gracias de nuevo victor !!
En este enlace puedes ver más infor de como funcionan los threads, a mi me sirvió de mucho: http://www.kresin.ru/en/hrbfaq_3.html#Doc11
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
- VictorCasajuana
- Posts: 30
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Contact:
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Disculpa, no entiendo bien tu respuesta...karinha wrote:NO.VictorCasajuana wrote:Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Saludos.
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Victor ya estoy ptobando lo que me sugeriste. la respuesta que ves NO es del amigo joao. yo tampoco la entendi.VictorCasajuana wrote:Disculpa, no entiendo bien tu respuesta...karinha wrote:NO.VictorCasajuana wrote:Disculpa, me he explicado a medias.
Threads te servirá para ejecutar el envío de los emails en segundo plano sin que se te pare la ejecución del programa hasta que el email se haya enviado.
Otro tema es el envío de emails, para eso puedes mirar el ejemplo testpop3.prg
Espero que con esto te sirva.
Un saludo.
Saludos.
"Los errores en programación, siempre están entre la silla y el teclado..."
- Rick Lipkin
- Posts: 2397
- Joined: Fri Oct 07, 2005 1:50 pm
- Location: Columbia, South Carolina USA
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Jose
If your client desktops are using MS OUtlook .. this code works well ...
Rick Lipkin
If your client desktops are using MS OUtlook .. this code works well ...
Code: Select all
Try
oOutLook := TOleAuto():New("Outlook.Application")
Catch
Saying := "For some Odd reason The Outlook e-mail CLient failed to Initialize"
Msginfo( Saying )
Return(.f.)
End Try
oMailItem := oOutLook:Invoke("CreateItem", 0)
oMailitem:to := cTo
*oMailItem:Recipients:Add( cOther )
oMailitem:CC := cCC
oMailItem:Subject := cSubject
oMailItem:Body := cBody
Try
oMailItem:Attachments:Add("c:\dbtmp\"+cEmailName+".pdf" )
Catch
End Try
oMailItem:display(.F.) // sends without any intervention
oMailItem:Invoke("Send")
sysrefresh()
msginfo( "E-mail Sent" )
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Rick:
Thanks for your code.
I have a couple of questions for you.
First question, how can I know that the mailing failed?
Second question, your code works well, when sending the
mail shows me Outlook screen for a few seconds, is there a way to avoid it?
Best regards
Thanks for your code.
I have a couple of questions for you.
First question, how can I know that the mailing failed?
Second question, your code works well, when sending the
mail shows me Outlook screen for a few seconds, is there a way to avoid it?
Best regards
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
hello rickRick Lipkin wrote:Jose
If your client desktops are using MS OUtlook .. this code works well ...
Rick LipkinCode: Select all
Try oOutLook := TOleAuto():New("Outlook.Application") Catch Saying := "For some Odd reason The Outlook e-mail CLient failed to Initialize" Msginfo( Saying ) Return(.f.) End Try oMailItem := oOutLook:Invoke("CreateItem", 0) oMailitem:to := cTo *oMailItem:Recipients:Add( cOther ) oMailitem:CC := cCC oMailItem:Subject := cSubject oMailItem:Body := cBody Try oMailItem:Attachments:Add("c:\dbtmp\"+cEmailName+".pdf" ) Catch End Try oMailItem:display(.F.) // sends without any intervention oMailItem:Invoke("Send") sysrefresh() msginfo( "E-mail Sent" )
Thanks for your collaboration and for the code.
To send mail, I use a function since 2000 very simple and effective.
It works the same as yours, but in this case I cannot allow that a copy of the mail stay on the sent folder of user's machine because it will be used to send the request for a security key generated by the system.
If remain a copy of the mail in the outlook or any other administrator such as thumderbird, incredimail, etc., the user who requests it will be able to see it in the SENT folder since the program generates the password and sends it to the administrator of the system for aprobation. I hope I have explained myself.
This is an example of the code i have been using for years
Code: Select all
Static function doit(cNombreE,cMailE,aCustomer)
local oMail
local cSubject := 'LG Electronics De Venezuela, C.A. (Su orden de reparacion/chequeo ha sido procesada)'
local cMessage := 'Estimado(s) Sr(es).: '+cNombreE+CRLF
DEFINE MAIL oMail SUBJECT cSubject TEXT cMessage
oMail:aRecipients = aCustomer
ACTIVATE MAIL oMail
return .t.
Any suggestions to do it in the background and without using any mail manager?
"Los errores en programación, siempre están entre la silla y el teclado..."
- JoseAlvarez
- Posts: 201
- Joined: Sun Nov 09, 2014 5:01 pm
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Armando, el código que le mostré a rick, no muestra ni abre el administrador de correo que yo uso que es el THUNDERBIRD, todo es transparente al usuario.Armando wrote:Rick:
Thanks for your code.
I have a couple of questions for you.
First question, how can I know that the mailing failed?
Second question, your code works well, when sending the
mail shows me Outlook screen for a few seconds, is there a way to avoid it?
Best regards
No se como se comportará con el outlook.
Para afinarla más, se le podría agregar un par de cosas, como un mensaje indicando si el correo se envió con éxito o no y un gif de espera que indique que esta siendo enviado el correo.
Si lo haces y te funciona, te acuerdas de este amigo
"Los errores en programación, siempre están entre la silla y el teclado..."
- Rick Lipkin
- Posts: 2397
- Joined: Fri Oct 07, 2005 1:50 pm
- Location: Columbia, South Carolina USA
Re: ¿Alguna funcion para enviar email desatendido xHarbour?
Armondo
Use try\catch
Rick Lipkin
Use try\catch
Code: Select all
Try
oOutLook: = TOleAuto ( ) : New ( "Outlook.Application" )
Catch
Saying: = "For some Odd reason The Outlook e-mail CLient failed to Initialize"
Msginfo ( Saying )
Return ( .f. )
End Try