@ 082, 040 BTNGET oGet[6] VAR cCCO SIZE 258, 09 PIXEL ;
OF oDlgIni PICTURE "@" UPDATE RESOURCE "BUSCAR" ;
ACTION INCLUI( oGet[6], @cCCO ) ;
FONT oFont1
@ 235, 099 BUTTONBMP oBtn[1] PROMPT "&Enviar Email(Send) " OF oDlgIni ;
SIZE 60, 12 PIXEL ;
ACTION ( cTime := "AGUARDE, TENTANDO ENVIAR.", ;
oSay[6]:Refresh(), ;
IF( lRet := CONFIG_MAIL(LOWER(ALLTRIM(cUser)),;
ALLTRIM(cPass), ;
LOWER(ALLTRIM(cRemt)),;
LOWER(ALLTRIM(cDest)),;
LOWER(ALLTRIM(cCC)), ;
LOWER(ALLTRIM(cCCO)), ;
cTxt, cAssunto ), ;
MsgInfo( "Mensagem Enviada com Sucesso! ", ;
"Atenção "),), cTime := "", ;
oSay[6]:Refresh(), ;
XFOCUS( oGet[1] ) )
FUNCTION Config_Mail(_cUser,cPass,_cRemt,cDest, cCC, cCCO, cTxt, cSubject)
LOCAL lRet := .F.
LOCAL oCfg, oError
LOCAL cServPOP3 := aServs[nServ][1] //--> SERVIDOR POP3 - "@servidor.com.br"
LOCAL cServSMTP := aServs[nServ][2] //--> SERVIDOR SMTP - "smtp.servidor.com.br"
LOCAL nPort := aServs[nServ][3]
LOCAL lAut := .T.
LOCAL lSSL := aServs[nServ][4]
// Envia o email
IF Empty( cPass ) .OR. ;
Empty( _cRemt ) .OR. ;
( Empty( cDest ) .AND. ;
Empty( cCC ) .AND. ;
Empty( cCCO ) )
MsgStop( OemToAnsi( "Preencha Todos os Campos " )+CRLF+ ;
OemToAnsi( "Verifique o Remetente. " )+CRLF+ ;
OemToAnsi( "Verifique o Destin rio. " ), ;
OemToAnsi( "Aten‡Æo, Falha no Envio. " ) )
RETURN( .F. )
ELSE
/* // era assim
cUser := ALLTRIM( _cUser ) + aDomin[nServ]
cRemt := ALLTRIM( _cRemt ) + aDomin[nServ]
*/
cUser := ALLTRIM( _cUser ) + ALLTRIM( cServPOP3 )
cRemt := ALLTRIM( _cRemt ) + ALLTRIM( cServPOP3 )
ENDIF
TRY
oCfg := CREATEOBJECT( "CDO.Configuration" )
WITH OBJECT oCfg:Fields
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cServSMTP // Servidor SMTP
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport" ):Value := nPort
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing" ):Value := 2
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := lAut
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := lSSL
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername" ):Value := cUser
:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword" ):Value := cPass
:UPDATE()
END WITH
lRet := .T.
CATCH oError
MsgInfo( "Não Foi Possível Enviar o E-Mail!" +CRLF+ ;
"Verifique o Remetente " +CRLF+ ;
"Verifique o Destinatário " +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+ ;
"Mensajem: " + oError:Description, "Atenção " )
END
//--> FIM DAS CONFIGURACOES.
IF lRet
TONE( 900, 2) ; TONE( 900, 2 ) ; TONE( 1000, 2 )
IF LEN( aAttach ) >= 1 // ? [TEM ANEXO]
MsgRun( "Tentando Enviar o Email com Anexo(s) ", ;
"Favor Esperar, Pode Demorar! ", ;
{ || lRet := Envia_Mail(oCfg,cRemt,cDest, cCC, cCCO, cTxt, cSubject) } )
ELSE // ? [NAO TEM AXEXO]
// Era assim
//lRet := Envia_Mail(oCfg,cRemt,cDest, cCC, cCCO, cTxt, cSubject)
MsgRun( "Tentando Enviar o Email sem Anexo(s) ", ;
"Favor Esperar, Pode Demorar! ", ;
{ || lRet := Envia_Mail(oCfg,cRemt,cDest, cCC, cCCO, cTxt, cSubject) } )
ENDIF
ENDIF
RETURN( lRet )