Uso o xHarbour com o hb_sendmail() para enviar e-mails a muito tempo, sem problemas.
Porem a empresa que presto serviço mudou para o office365, e o mesmo utiliza autenticação SSL, e não estou conseguindo adaptar o hb_sendmail().
Pesquisei em alguns posts do grupo e muitos falam sobre linkar as libs do OpenSSL e TipSSL.lib, ssleay32.lib e libeay32.lib.
Tentei mas sem sucesso.
Alguém já teve essa necessidade e conseguiu fazer funcionar.
Desde já agradeço.
Segue um código de exemplo, com PRG e EXE.XBP
FUNCTION MAIN
cls
**************
** Funciona **
**************
mDe:="sistema@volp.com.br"+space(16)
mPara:="fernando@volp.com.br"+space(23)
mAssunto:="TESTE DE E-MAIL OFFICE 365"
mSmtp:="smtp.volp.com.br"+space(34)
mPop:="pop.volp.com.br"+space(35)
mSenha:="senha"+space(40)
mAutentica:="sistema@volp.com.br"+space(31)
mPorta:=587
mSSL:="N"
lTestarSSl:=.F.
******************
** Não Funciona **
******************
if lTestarSSl
mDe:="volpindustria01@gmail.com"+space(16)
mPara:="fernando@volp.com.br"+space(23)
mAssunto:="TESTE DE E-MAIL OFFICE 365"
mSmtp:="smtp.gmail.com"+space(34)
mPop:="pop.gmail.com"+space(35)
mSenha:="senha"+space(40)
mAutentica:="volpindustria01@gmail.com"+space(31)
mPorta:=587
mSSL:="S"
endif
do while .T.
@ 02,12 say "De :" get mDe
@ 03,12 say "Para :" get mPara
@ 04,12 say "Assunto:" get mAssunto
@ 06,12 say "SMTP :" get mSmtp
@ 07,12 say "POP :" get mPop
@ 08,12 say "Usuario:" get mAutentica
@ 09,12 say "Senha :" get mSenha
@ 10,12 say "Porta :" get mPorta
@ 11,12 say "SSL :" get mSSl valid mSSl$"SN"
@ 11,25 say "S=.T. N=.F."
@ 24,0 say "Digite os dados ou ESC para sair"+space(40)
read
if lastkey()==27 //ESC
exit
endif
@ 24,0 say "Enviado e-mail para "+mPara
/*
IF ! tip_SSL()
alert( 'Require SSL support' )
RETURN .F.
ENDIF
*/
if HB_SENDMAIL(allTrim(mSmtp),mPorta,allTrim(mDe),{mPara},,,"TESTE CORPO DO E-MAIL",allTrim(mAssunto),,alltrim(mAutentica),allTrim(mSenha),allTrim(mPop),,.F.,.T.,.T.,,,,if(mSSl=="S",.T.,.F.))
alert("Email enviado para "+allTrim(mPara))
else
alert("FALHA AO ENVIAR E-MAIL PARA "+allTrim(mPara))
endif
loop
enddo
RETURN NIL
CINI =
C_OUTPUTFOLDER =
DEFFILE =
INCLUDEFOLDERS =
LAUTORUN =
LDEBUG = .F.
LGUI = .F.
LIBFOLDERS =
LMT = .F.
LNOAUTOFWH = .F.
LPRG_CLASSICDEBUG = .F.
LPRG_DEBUG = .F.
LUSEDLL = .F.
MAPFILE =
MYC_FLAGS =
MYDEFINES =
MYLINK_FLAGS =
MYPRG_FLAGS =
MYRC_FLAGS =
MYSLY_FLAGS =
OUTPUTFOLDER =
PRG_OUTPUTFOLDER =
RC_OUTPUTFOLDER =
RUNARGUMENTS =
SLY_OUTPUTFOLDER =
STARTIN =
TARGETFOLDER =
[email.prg]
MYC_FLAGS =
MYDEFINES =
MYPRG_FLAGS =
[C:\xHB\Lib\TipSSL.lib]
[C:\xHB\Lib\ssleay32.lib]
[C:\xHB\Lib\libeay32.lib]
[C:\xHB\OpenSSL-Win32\lib\libssl.lib]
[C:\xHB\OpenSSL-Win32\lib\openssl.lib]