Page 2 of 2

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Tue Jan 26, 2021 3:07 pm
by JoseAlvarez
Rick Lipkin wrote:Armondo

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


 
Rick Lipkin
Good ! Thanks a Lot Rick !! :D

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Tue Jan 26, 2021 3:11 pm
by Armando
Rick:

Thanks a lot.

Regards

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Tue Jan 26, 2021 9:09 pm
by JoseAlvarez
Todavia sigo sin poder resolver el envio de email...

Alguna mano amiga ??

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Wed Jan 27, 2021 6:42 am
by Victor Casajuana Mas
Cuál es el problema exacto que tienes?

Enviado desde mi moto g(7) plus mediante Tapatalk

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Wed Jan 27, 2021 12:45 pm
by acuellar
José

Intenta de ésta forma

Code: Select all

Function EnviaCorreo(Cuerpo,Asunto,Adj)
 local oMsg := CreateObject( "CDO.Message" )
 local oConf := CreateObject( "CDO.Configuration" )
 local cSchema := "http://schemas.microsoft.com/cdo/configuration/"
 Local lOk := .T.,oError
 
oError:=NIL
TRY
 oConf:Fields[ cSchema + "smtpusessl" ] = .T. 
 oConf:Fields[ cSchema + "smtpauthenticate" ] = 1
 oConf:Fields[ cSchema + "sendusername" ] = "cuenta@gmail.com" 
 oConf:Fields[ cSchema + "sendpassword" ] = "password"
 oConf:Fields[ cSchema + "smtpserver" ] = "smtp.gmail.com"
 oConf:Fields[ cSchema + "sendusing" ] = 2
 oConf:Fields[ cSchema + "smtpserverport" ] = 465 
        
 oConf:Fields:Update()

 oMsg:To = "cuenta_para@gmail.com" 
 oMsg:From ="cuenta_de@gmail.com"
 oMsg:Subject = Asunto
 oMsg:HTMLBody = Cuerpo
 If !Empty(Adj)
   If File(Adj)
    oMsg:AddAttachment(Adj)
   Endif
 Endif
 oMsg:Configuration = oConf

 oMsg:Send()

CATCH oError
 MsgInfo("No pudo enviar el correo: " + oError:Description, "Error..." )
  lOk:=.F.
END

Return lOk
 

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Wed Jan 27, 2021 1:12 pm
by postinelli
asi hago yo, y salen automaticamente los emails

Code: Select all

//-----------------------------------------------------------------------------------------------
Function GMAILBK (cDestino,cAsunto,cTexto,cAdjunto )

Local oEmailCfg,oEmailMsg,oError,cHtml

Local cServer:= GetPvProfString("Enviador","SERVERSTP" ,"", cIniFile)
Local nPortEmail:=VAL(GetPvProfString("Enviador","EMAILPUERTO","25", cIniFile))
Local cEmailFrom:=GetPvProfString("Enviador","EMAILFROM" ,"", cIniFile)
Local cEmailUser:=GetPvProfString("Enviador","EMAILUSER" ,"", cIniFile)
Local cEmailPass:=GetPvProfString("Enviador","EMAILPASSW" ,"", cIniFile)
Local cEmailSsl:=GetPvProfString("Enviador","EMAILSSL" ,"NO", cIniFile)

DEFAULT cAdjunto:=""
DEFAULT cAsunto :=""
DEFAULT cTexto := ""

if Empty(cDestino )
msgAlert("no ha puesto un destinatario")
Return .f.
endif

TRY
oEmailCfg := CREATEOBJECT( "CDO.Configuration" )
WITH OBJECT oEmailCfg:Fields
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cServer //"smtp.fibertel.com.ar" //"smtp.live.com" ///"smtp.gmail.com"
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport" ):Value := nPortEmail //25 //465
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing" ):Value := 2 // Remote SMTP = 2, local = 1
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := .T.
if cEmailSsl='SI'
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := .T. //para ssl
else
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := .F. //para sin ssl
endif
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername" ):Value := cEmailUser //
:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword" ):Value := cEmailPass //
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"):Value := 30
:Update()
END WITH
CATCH oError
MsgInfo( "No se ha enviado el " + ";" + ;
"Error: " + TRANSFORM(oError:GenCode, NIL) + ";" + ;
"SubC: " + TRANSFORM(oError:SubCode, NIL) + ";" + ;
"OSCode: " + TRANSFORM(oError:OsCode, NIL) + ";" + ;
"SubSystem: " + TRANSFORM(oError:SubSystem, NIL) + ";" + ;
"Message: " + oError:Description )
END
oError:=NIL

TRY
oEmailMsg := CREATEOBJECT ( "CDO.Message" )
WITH OBJECT oEmailMsg
:Configuration = oEmailCfg
:From = chr(34)+Empresa+' '+chr(34) + '<'+cEmailFrom+'>' // This will be displayed in the From (The email id does not appear)
:To = cDestino
:Subject = cAsunto
:MDNRequested = .T.
:TextBody = cTexto
if !Empty(cAdjunto)
:AddAttachment(cAdjunto)
endif

END WITH
oEmailMsg:Send()
CATCH oError
MsgInfo("No se ha enviado el mensaje" + ";" + CRLF+ ;
"Error: " + TRANSFORM(oError:GenCode, NIL) + ";" + CRLF+;
"SubC: " + TRANSFORM(oError:SubCode, NIL) + ";" + CRLF+ ;
"OSCode: "+ TRANSFORM(oError:OsCode, NIL) + ";" + CRLF +;
"SubSystem: " + TRANSFORM(oError:SubSystem, NIL) + ";" +CRLF+ ;
"Message: " + oError:Description )
END

// MsgInfo("Correo enviado correctamente")

Return .T.
//-----------------------------------------------------------------------------------------------


 

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Wed Jan 27, 2021 1:27 pm
by karinha
postinelli wrote:asi hago yo, y salen automaticamente los emails

Code: Select all

//-----------------------------------------------------------------------------------------------
Function GMAILBK (cDestino,cAsunto,cTexto,cAdjunto )

Local oEmailCfg,oEmailMsg,oError,cHtml

Local cServer:= GetPvProfString("Enviador","SERVERSTP" ,"", cIniFile)
Local nPortEmail:=VAL(GetPvProfString("Enviador","EMAILPUERTO","25", cIniFile))
Local cEmailFrom:=GetPvProfString("Enviador","EMAILFROM" ,"", cIniFile)
Local cEmailUser:=GetPvProfString("Enviador","EMAILUSER" ,"", cIniFile)
Local cEmailPass:=GetPvProfString("Enviador","EMAILPASSW" ,"", cIniFile)
Local cEmailSsl:=GetPvProfString("Enviador","EMAILSSL" ,"NO", cIniFile)

DEFAULT cAdjunto:=""
DEFAULT cAsunto :=""
DEFAULT cTexto := ""

if Empty(cDestino )
msgAlert("no ha puesto un destinatario")
Return .f.
endif

TRY
oEmailCfg := CREATEOBJECT( "CDO.Configuration" )
WITH OBJECT oEmailCfg:Fields
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cServer //"smtp.fibertel.com.ar" //"smtp.live.com" ///"smtp.gmail.com"
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport" ):Value := nPortEmail //25 //465
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing" ):Value := 2 // Remote SMTP = 2, local = 1
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := .T.
if cEmailSsl='SI'
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := .T. //para ssl
else
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := .F. //para sin ssl
endif
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername" ):Value := cEmailUser //
:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword" ):Value := cEmailPass //
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"):Value := 30
:Update()
END WITH
CATCH oError
MsgInfo( "No se ha enviado el " + ";" + ;
"Error: " + TRANSFORM(oError:GenCode, NIL) + ";" + ;
"SubC: " + TRANSFORM(oError:SubCode, NIL) + ";" + ;
"OSCode: " + TRANSFORM(oError:OsCode, NIL) + ";" + ;
"SubSystem: " + TRANSFORM(oError:SubSystem, NIL) + ";" + ;
"Message: " + oError:Description )
END
oError:=NIL

TRY
oEmailMsg := CREATEOBJECT ( "CDO.Message" )
WITH OBJECT oEmailMsg
:Configuration = oEmailCfg
:From = chr(34)+Empresa+' '+chr(34) + '<'+cEmailFrom+'>' // This will be displayed in the From (The email id does not appear)
:To = cDestino
:Subject = cAsunto
:MDNRequested = .T.
:TextBody = cTexto
if !Empty(cAdjunto)
:AddAttachment(cAdjunto)
endif

END WITH
oEmailMsg:Send()
CATCH oError
MsgInfo("No se ha enviado el mensaje" + ";" + CRLF+ ;
"Error: " + TRANSFORM(oError:GenCode, NIL) + ";" + CRLF+;
"SubC: " + TRANSFORM(oError:SubCode, NIL) + ";" + CRLF+ ;
"OSCode: "+ TRANSFORM(oError:OsCode, NIL) + ";" + CRLF +;
"SubSystem: " + TRANSFORM(oError:SubSystem, NIL) + ";" +CRLF+ ;
"Message: " + oError:Description )
END

// MsgInfo("Correo enviado correctamente")

Return .T.
//-----------------------------------------------------------------------------------------------


 
Mui bién. Cuasi perfecto.

Saludos.

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Thu Jan 28, 2021 3:01 pm
by JoseAlvarez
Hola amigos,,,

Gracias Adhemar,
Gracias Postinelli,
Gracias Joao

Voy a probar estas sugerencias que me dan y les estare avisando por acá

seguimos en contacto

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Sun Jan 31, 2021 10:37 pm
by JoseAlvarez
Hola de nuevo..

Adhemar, funciono perfecto, muchisimas gracias por la ayuda.
Postinelli, tambien funciono a la primera.. agradecido por tu atencion.

Resuelto el problema que tenia.

Victor, gracias tambien por tu colaboracion y soporte.

Gracias al foro FW !!

Re: ¿Alguna funcion para enviar email desatendido xHarbour?

Posted: Mon Feb 01, 2021 3:30 am
by Armando
Rick:

Thank you.

Regards