Enviar mail en segundo plano

Post Reply
User avatar
JoseAlvarez
Posts: 810
Joined: Sun Nov 09, 2014 5:01 pm

Enviar mail en segundo plano

Post by JoseAlvarez »

Hola a todos.

Necesito que mi programa envíe un correo ya predeterminado, en segundo plano, es decir, sin ninguna intervencion del usuario.

Es para cuando alguna persona olvide su password de entrada al sistema. Deberá oprimir el boton "recuperar contraseña" y que el sistema le envie una nueva contraseña temporal al correo registrado en su ficha personal al momento en que fue creado. Solo deberá ver la acción de "Nueva contraseña envida" o "No se pudo enviar el correo"

Siempre se enviará desde la misma cuenta de correo, el mismo ID, el msimo asunto, el mismo cuerpo del correo, solo cambiará la nueva contraseña que será generada de manera aleatoria.

Todo debe hacerse automático,

Alguna ayuda?

Gracias !
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Re: Enviar mail en segundo plano

Post by cmsoft »

Code: Select all | Expand


#Include "FiveWin.Ch"
*-------------------------------------------------*
Function Mail(cdestino)
*-------------------------------------------------*

LOCAL loCfg, loMsg, oError, isError := .F., oRep, oPrn
local cSMTP := "smtp.gmail.com"
Local cPuerto := 465
Local cLogin := "tu_mail@gmail.com"
Local cPassword := "tu_password"
local cRemitente:= "<Tu Sistema>"
*Local cDestino := "<cgomez@mercedes.gob.ar>"
Local cAsunto := "Recuperacion de contraseña"
Local cMensaje := "Adjuntamos Su nueva contraseña"+CHR(10)+ContraseñaAleatoria() // Esta funcion deberia devolverte la contraseña
local cSSL := .T., cAuth := .T.
local cFichero := nil


// Control autentificación via SSL
cSSL := .T.

// Internet

loCfg := CREATEOBJECT( "CDO.Configuration" )
WITH OBJECT loCfg:Fields
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cSMTP // "smtp.gmail.com"
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport" ):Value := cPuerto //465
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing" ):Value := 2
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := cAuth //.T.
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := cSSL // .T.
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername" ):Value := cLogin //tu cuenta de correo de salida
:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword" ):Value := cPassword //"" //con tu clave gmail. en este caso
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"):Value := 30

:Update()
END WITH


loMsg := CREATEOBJECT ( "CDO.Message" )
WITH OBJECT loMsg
:Configuration = loCfg
:From = cLogin
:To = cDestino
:Subject = cAsunto
:MDNRequested = .T.
:TextBody = cMensaje
:Send()
END WITH

IF isError = .F.
    MsgInfo( "Mensaje enviado correctamente", " A V I S O " )
    ELSE
    MsgStop("ERROR: Se ha producido un error al enviar un mensaje al buzon "+cDestino+CRLF+CRLF+"Descripción del Error: "+oError:Description, " E R R O R ")
ENDIF

return nil
User avatar
karinha
Posts: 7935
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Enviar mail en segundo plano

Post by karinha »

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
JoseAlvarez
Posts: 810
Joined: Sun Nov 09, 2014 5:01 pm

Re: Enviar mail en segundo plano

Post by JoseAlvarez »

Estimados CMSoft y Karinha.

Por motivos de viaje estuve alejado de la PC por varios dias. Ya regresé y consigo las respuestas a mi consulta.

Gracias una vez más por su ayuda. Siempre estan presentes. Muchísimas gracias.

CMSoft, ya probé el código que pusiste.. funciona al 100%. Agradecido !

Karinha, ya descargué el .zip que me indicas, voy a darle una mirada y te comento.

Saludos y que viva el foro !
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Re: Enviar mail en segundo plano

Post by cmsoft »

Me alegra que te haya sido de utilidad. Espero que el viaje haya sido placentero!! :D
Abrazo
Post Reply