Página 3 de 5
e-mail no harbour 3.2
Enviado: 27 Dez 2018 23:47
por Jairo Maia
Fernando queiroz escreveu:FIZ o anexo dessa forma mas não funcionou, alguém tem exemplo

O anexo você está enviando como texto. Tem que ser Array:
Código: Selecionar todos
{"C:\BENE\XML12181111194159000100550010000070421527821207.XML"}, ;
e-mail no harbour 3.2
Enviado: 28 Dez 2018 00:47
por Fernando queiroz
:{ :{ :{ :{
agora funcionou certinho
e-mail no harbour 3.2
Enviado: 28 Dez 2018 14:10
por cjp
Aqui ainda não funcionou. Estou testando assim:
Código: Selecionar todos
if !hb_SendMail( ;
"smtp.gmail.com", ;
Val(cPort), ;
cFrom, ;
dstmail, ;
NIL /* CC */, ;
{} /* BCC */, ;
"teste1", ;
"teste2", ;
{""}, ;
cFrom, ;
cPassword, ;
"", ;
NIL /* nPriority */, ;
NIL /* lRead */, ;
.T. /* lTrace */, ;
.F., ;
NIL /* lNoAuth */, ;
NIL /* nTimeOut */, ;
NIL /* cReplyTo */, ;
iif(cPort=="465",.T.,.F.) /* lSSL */ )
Está retornando falso, mas sem motivo. Estou usando cPort="465". É isso?
e-mail no harbour 3.2
Enviado: 28 Dez 2018 14:13
por rubens
Liberou no Gmail para enviar email por aplicativo menos seguro.. acho que é isso...
Rubens
e-mail no harbour 3.2
Enviado: 28 Dez 2018 14:26
por Fernando queiroz
agora funcionando tudo certinho, muito bom

)

)

)

)

)
tive de colocar algumas DLL dentro da pasta do programa
libeay32.dll
libgcc_s_sjlj-1.dll
libwinpthread-1.dll
ssleay32.dll
:-Y :-Y :-Y :-Y
e-mail no harbour 3.2
Enviado: 28 Dez 2018 14:29
por Fernando queiroz
Preferi criar uma conta de e-mail para o sistema em vez de usar a conta do cliente, facilita a instalação ficando um padrão
e não precisa ficar configurando toda conta de cliente para liberar programas menos segura e outras coisas, fazendo somente uma vez :-Y :-Y
e-mail no harbour 3.2
Enviado: 28 Dez 2018 14:56
por cjp
Liberou no Gmail para enviar email por aplicativo menos seguro.. acho que é isso...
Rubens
Não sabia que precisava disso. Tentei fazer isto agora, mas não achei nada sobre isso nas configurações do Gmail. Sabe onde fica?
e-mail no harbour 3.2
Enviado: 28 Dez 2018 14:59
por Fernando queiroz
e-mail no harbour 3.2
Enviado: 28 Dez 2018 15:02
por Fernando queiroz
cjp escreveu:Liberou no Gmail para enviar email por aplicativo menos seguro.. acho que é isso...
Rubens
Não sabia que precisava disso. Tentei fazer isto agora, mas não achei nada sobre isso nas configurações do Gmail. Sabe onde fica?
https://support.google.com/accounts/ans ... 5?hl=pt-BR
e-mail no harbour 3.2
Enviado: 28 Dez 2018 15:06
por cjp
Veja a mensagem que está dando:
O site admin.google.com é apenas para contas do G Suite. Não é possível usar contas do Gmail normais para fazer login em admin.google.com. Saiba mais
e-mail no harbour 3.2
Enviado: 28 Dez 2018 15:21
por Jairo Maia
Fernando queiroz escreveu:verifiquei que durante o envio ele cria um arquivo de LOG com o nome
SMTP-X.log para cada e-mail enviado eu apago após a confirmação do envio
para não ficar cheio de arquivos dentro da pasta
Altera a linha
lTrace que está assim:
Para:
Isso faz com que o arquivo de Log não seja gerado.
e-mail no harbour 3.2
Enviado: 28 Dez 2018 15:53
por cjp
Curiosamente, o meu está com o trace .T., e mesmo assim não está criando o arquivo de log.
e-mail no harbour 3.2
Enviado: 28 Dez 2018 16:34
por Fernando queiroz
Jairo Maia escreveu:Fernando queiroz escreveu:verifiquei que durante o envio ele cria um arquivo de LOG com o nome
SMTP-X.log para cada e-mail enviado eu apago após a confirmação do envio
para não ficar cheio de arquivos dentro da pasta
Altera a linha
lTrace que está assim:
Para:
Isso faz com que o arquivo de Log não seja gerado.
certinho funcionando sem gerar o .LOG
:{ :{ :{
e-mail no harbour 3.2
Enviado: 28 Dez 2018 16:43
por Fernando queiroz
Código: Selecionar todos
/* Copyright 2009 Viktor Szakats (vszakats.net/harbour) */
#require "hbssl"
#require "hbtip"
#if ! defined( __HBSCRIPT__HBSHELL )
REQUEST __HBEXTERN__HBSSL__
#endif
#include "simpleio.ch"
PROCEDURE Email_Envia( cFrom, cPassword, cTo, cHost, aFilesAttch, cBody, cSubject )
LOCAL nPort
LOCAL lSTARTTLS := .F.
LOCAL lsucesso := .F.
IF ! tip_SSL()
? "Error: Requires SSL support"
RETURN
ENDIF
hb_default( @cFrom , "usuario@gmail.com" )
hb_default( @cPassword, "password" )
hb_default( @cTo , "usuario@hotmail.com" )
hb_default( @cHost , "google" )
cHost := Lower( cHost )
/* SMTPS works with SSL/TLS on port 465 and with STARTTLS
on port 587. STARTTLS mode is fully automatic and requires
SSL/TLS be disabled at first (it will be activated on
request after STARTTLS command) */
DO CASE
CASE cHost == "apple" .OR. "@icloud.com" $ cFrom .OR. "@mac.com" $ cFrom .OR. "@me.com" $ cFrom
cHost := "smtp.mail.me.com"; lSTARTTLS := .T.
CASE cHost == "fastmail" .OR. "@fastmail.com" $ cFrom .OR. "@fastmail.fm" $ cFrom
cHost := "smtp.fastmail.com"
CASE cHost == "gmx.net" .OR. "@gmx.net" $ cFrom .OR. "@gmx.ch" $ cFrom .OR. "@gmx.de" $ cFrom
cHost := "mail.gmx.net"; lSTARTTLS := .T.
CASE cHost == "google" .OR. "@gmail.com" $ cFrom .OR. "@googlemail.com" $ cFrom
cHost := "smtp.gmail.com"
CASE cHost == "mail.ru" .OR. "@mail.ru" $ cFrom
cHost := "smtp.mail.ru"
CASE cHost == "netease" .OR. "@163.com" $ cFrom
cHost := "smtp.163.com"
CASE cHost == "office365"
cHost := "smtp.office365.com"; lSTARTTLS := .T.
CASE cHost == "outlook" .OR. "@outlook.com" $ cFrom .OR. "@hotmail.com" $ cFrom
cHost := "smtp-mail.outlook.com"; lSTARTTLS := .T.
CASE cHost == "sina" .OR. "@sina.com" $ cFrom
cHost := "smtp.vip.sina.com"
CASE cHost == "uol" .OR. "@uol.com.br" $ cFrom
cHost := "smtps.uol.com.br"
CASE cHost == "yahoo" .OR. "@yahoo.com" $ cFrom
cHost := "smtp.mail.yahoo.com"
CASE ":" $ cHost
IF TUrl():New( cHost ):nPort != -1
nPort := TUrl():New( cHost ):nPort
ENDIF
lSTARTTLS := ( nPort == 587 )
cHost := TUrl():New( cHost ):cServer
ENDCASE
hb_default( @nPort, iif( lSTARTTLS, 587, 465 ) )
? "Host:", cHost, hb_ntos( nPort ), iif( lSTARTTLS, "(STARTTLS)", "" )
lsucesso := tip_MailSend( ;
cHost, ;
nPort, ;
cFrom, ;
cTo, ;
NIL /* CC */, ;
{} /* BCC */, ;
cBody, ;
cSubject, ;
aFilesAttch, ;
cFrom, ;
cPassword, ;
"", ;
NIL /* nPriority */, ;
NIL /* lRead */, ;
.F. /* lTrace */, ;
.F., ;
NIL /* lNoAuth */, ;
NIL /* nTimeOut */, ;
NIL /* cReplyTo */, ;
nPort == 465 )
RETURN lsucesso
código final do email.prg fiz algumas alterações na chamada da rotina
Código: Selecionar todos
cSubject := "SGC - NOTA FISCAL ELETRONICA NF-E"
cBody := "emitida por: " + HB_EOL() +;
FLAG->n_xFant+ HB_EOL() +;
FLAG->n_xNome+ HB_EOL() +;
"CPF/CNPJ: " + FLAG->n_CNPJ + HB_EOL() +;
"NOTA FISCAL ELETRONICA Nr. " + NOTAFE->b_serie + "/" + NOTAFE->b_nNF + HB_EOL() + HB_EOL() +;
"para: " + HB_EOL() + ;
RTRIM(NOTAFE->e_xNome) + HB_EOL() +;
"CPF/CNPJ: " + RTRIM(NOTAFE->e_CNPJ) + HB_EOL() +;
"VALOR: R$ " + LTRIM(STR(NOTAFE->w_vNF,14,2)) + HB_EOL()+ HB_EOL() +;
"chave acesso: " + substr(NOTAFE->a_Id,4,44) + HB_EOL()+ HB_EOL() +;
"Obs: E-mail enviado automaticamente por SGC-SISTEMA DE GESTAO DE COMERCIO, nao responda."
aFilesAttch := {cPrefixo + ".xml",cPrefixo + ".PDF"}
lSucesso := Email_Envia( cFrom, cPassword, cTo, cHost, aFilesAttch, cBody, cSubject )
IF ! lSucesso
hwg_MsgInfo("E-MAIL NAO FOI ENVIADO"+ HB_EOL() )
ELSE
hwg_MsgInfo("E-MAIL FOI ENVIADO COM SUCESSO"+ HB_EOL() )
ENDIF
funfando tudo redondinho

e-mail no harbour 3.2
Enviado: 30 Dez 2018 00:46
por cjp
Tentei desta última forma, mas tá dando erro na compilação: undefined reference to 'hb_func_hwg_msginfo', 'hb_func_tip_mailsend' e 'hb_fun_hbextern__hbssl__'.
Precisa colocar alguma coisa na compilação?
Da forma anterior não funciona? Parecia mais simples.