Envio de e-mail

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 8028
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 2 vezes
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por Itamar M. Lins Jr. »

Olá!
https://projetoacbr.com.br/fontes/

Código: Selecionar todos

A    Doctos/ACBrDiversos/FormatosTelefone.pdf
A    Doctos/ACBrPonto/Portaria 1510 2009 consolidada.pdf
A    Doctos/NotasTecnicas/ACBr NT 2014-001 versão 1.02.pdf
A    Bem_Vindo_ao_Trunk2.pdf
A    Doctos/Palestras/Projeto ACBr - FDD.pdf
A    Doctos/Palestras/NFCe_FDD.pdf
 U   .
Atualizado para revisão 44440.
No Linux, baixar os fontes, mais 2 repositórios, instalar o Lazarus e pronto, gera para Windows 32/64 e Linux.(dentro do próprio Linux)

Código: Selecionar todos

29/12/2025
--- ACBrMonitor1 ---
[*] Correção na configuração do IniServicos do ACBrNFSeX.
    Por: Italo Giurizzato Junior
--- DoACBrNFSeUnit, ACBrMonitorConsts, ACBrMonitor1 ---
[+] Adicionado novo metodo NFSe.SetPathArquivoWebServices
    Por: Daniel de Morais Infocotidiano
Teve atualizações nos fontes, inclusive no manual, eles não escrevem tudo no Changelog.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 8028
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 2 vezes
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por Itamar M. Lins Jr. »

Olá!
Lembrando que pode fazer a mesma coisa no Windows.
Baixar os fontes, compilar usando o Lazarus que é o padrão e rodar o Inno(empacotador) que irá cria o instalador.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 8028
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 2 vezes
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por Itamar M. Lins Jr. »

Olá!
Mudei agora aqui para meu note com windows

Código: Selecionar todos

C:\dev\trunk2\Projetos\ACBrMonitorPLUS\Lazarus\Output>dir
 O volume na unidade C não tem nome.
 O Número de Série do Volume é 980F-D8EF

 Pasta de C:\dev\trunk2\Projetos\ACBrMonitorPLUS\Lazarus\Output

19/01/2026  16:10    <DIR>          .
19/01/2026  16:10    <DIR>          ..
22/07/2025  10:48        33.711.438 ACBrMonitorPLUS-1.4.0.343-x64-Instalador.exe
24/07/2025  10:47        33.716.577 ACBrMonitorPLUS-1.4.0.345-x64-Instalador.exe
06/08/2025  17:09        33.730.212 ACBrMonitorPLUS-1.4.0.348-x64-Instalador.exe
25/08/2025  10:25        33.757.744 ACBrMonitorPLUS-1.4.0.355-x64-Instalador.exe
10/09/2025  11:45        33.772.161 ACBrMonitorPLUS-1.4.0.360-x64-Instalador.exe
15/10/2025  20:17        33.826.602 ACBrMonitorPLUS-1.4.0.369-x64-Instalador.exe
21/10/2025  16:52        33.861.622 ACBrMonitorPLUS-1.4.0.370-x64-Instalador.exe
27/10/2025  14:26        33.847.652 ACBrMonitorPLUS-1.4.0.371-x64-Instalador.exe
28/11/2025  14:16        33.936.377 ACBrMonitorPLUS-1.4.0.380-x64-Instalador.exe
19/01/2026  16:11        33.970.094 ACBrMonitorPLUS-1.4.0.397-x64-Instalador.exe
21/01/2026  11:31    <DIR>          chm
23/09/2025  10:00    <DIR>          pdf
              10 arquivo(s)    338.130.479 bytes
               4 pasta(s)   74.320.732.160 bytes disponíveis

C:\dev\trunk2\Projetos\ACBrMonitorPLUS\Lazarus\Output>        
Como pode ver pelas datas dos instaladores gerados, faço isso há muito tempo.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 8028
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 2 vezes
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por Itamar M. Lins Jr. »

Olá!
Te mandei uma versão de 19/01/2023 do ACBrMonitorPlus.
No youtube canal info-cotidiano tem um video ensinando como gerar. Tem algumas atualizações, mas o básico está lá.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por JoséQuintas »

Softwhouse escreveu: 25 Jan 2026 21:49 Itamar, eu já passei dos 60 anos há bastante tempo. Não quero bater boca. Pedi ajuda, se não tiverem como ajudar pelo menos não atrapalhem tipo José Quintas.
Aff.
Recebeu ajuda, apenas não sabe reconhecer.
Minha classe inteira está postada aqui no fórum.
Também recebeu ajuda sobre whatsapp.
Alguém deve estar enganando ao cobrar pela rotina, e deve cobrir somente um tempo de uso.

Também passei dos 60.
Deixei tudo disponível no fórum, seria só pesquisar.
Se pedir pra pesquisar é motivo de reclamação, esqueça meus fontes do fórum.
Só um pouco de respeito é suficiente.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Softwhouse
Usuário Nível 3
Usuário Nível 3
Mensagens: 346
Registrado em: 07 Dez 2011 18:44
Localização: Porto Alegre/RS

Re: Envio de e-mail

Mensagem por Softwhouse »

Recebí ajuda sobre whatsApp aonde ??

Sobre um pouco de respeito, Algo que vc nunca teve com ninguém.
Fernando
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Re: Envio de e-mail

Mensagem por Kapiaba »

Olá, veja se ajuda:

https://forums.fivetechsupport.com/view ... 30#p223530

Regards, saludos.
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Re: Envio de e-mail

Mensagem por Kapiaba »

Código: Selecionar todos

// C:\FWH\SAMPLES\CDOSYS2.PRG - Simples MODEL for HARBOUR.

#include "FiveWin.ch"

FUNCTION Main()

   ...
   ...
   IF ...
      ...
      PW_EnviaEmail( mPwUser, mPwEmail, mPwNome, mPwPass )
      ...
   ENDIF
   ...
   ...

RETURN NIL
// Função para chamada do email:
FUNCTION PW_EnviaEmail( cPwUser, cPwEmail, cPwNome, cPwPass )

   LOCAL mRetorno := .T.

   // mail Simples nao responda
   cTo      := AllTrim( cPwEmail )
   cSubject := 'FiveWin:  Recuperação de Senha'
   lConf    := .T.
   lSSL     := .F.
   aFiles   := {} // pode ser uma matriz com vários endereços

   cMsg     := 'Simples Informática e Consultoria Ltda'
   cMsg     += CRLF + 'Sistema de Contabilidade Pública' + CRLF
   cMsg     += CRLF + 'Recuperação de Senha do Usuário:'
   cMsg     += CRLF + 'Nome: '     + cPwNome
   cMsg     += CRLF + 'Usuário: '  + cPwUser
   cMsg     += CRLF + 'Senha: '    + cPwPass
   cMsg     += CRLF + 'Email: '    + cPwEmail

   mRetorno := Envia_Email( aFiles, cSubject, cTo, cMsg, mEmailServer, ;
      mEmailFrom, mEmailUser, mQwer, mEmailPorta, '', '', lCONF, lSSL )

RETURN( mRetorno )

// Função de chamada do CDOSys:

/*
[url]http://www.pctoledo.com.br/forum/viewtopic.php?f=4&t=10764&start=30[/url]

[url]http://www.pctoledo.com.br/forum/viewtopic.php?f=2&t=16294&start=15[/url]

[url]http://fivewin.com.br/index.php?/topic/26829-erro-ao-enviar-e-mail-via-cdomessage-e-gmail/#comment-278073[/url]

[url]https://www.google.com/settings/security/lesssecureapps[/url]

[url]https://www.usandoaccess.com.br/tutoriais/enviar-email-usando-o-cdosys.asp[/url]

[url]https://stackoverflow.com/questions/3791461/cdo-message-wont-send-when-delivery-receipt-requested[/url]
*/

#pragma -w0
#pragma -es0

FUNCTION Envia_email( aFiles, cSubject, cDest, cMsg, cServerIp, cFrom, cUser, ;
                      cPass, vPORTSMTP, cCC, cBCC, vEMAIL_CONF, wSSL_EMAIL )

   LOCAL lRet := .F.
   LOCAL oCfg, oError, oMsg
   LOCAL lAut := .T.

   TRY
      oCfg := CREATEOBJECT( "CDO.Configuration" )

      WITH OBJECT oCfg:Fields

      :Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver"             ):Value := cServerIp   // server SMTP
      :Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport"         ):Value := vPORTSMTP
      :Item( "http://schemas.microsoft.com/cdo/configuration/sendusing"              ):Value := 2           // Remote SMTP = 2, local = 1
      :Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"       ):Value := 1           //
      :Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl"             ):Value := .F. // wSSL_EMAIL  // .F. Ou .T.
      :Item( "http://schemas.microsoft.com/cdo/configuration/sendusername"           ):Value := AllTrim( cUser )
      :Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword"           ):Value := AllTrim( cPass )
      :Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"  ):Value := 60

      :Update()

   END WITH

   lRet := .T.

   CATCH oError

      MsgStop( "Não Foi possível Enviar o e-Mail!"  + hb_osNewLine() + ;
               "Error: "     + Transform( oError:GenCode,   nil ) + ";" + hb_osNewLine() + ;
               "SubC: "      + Transform( oError:SubCode,   nil ) + ";" + hb_osNewLine() + ;
               "OSCode: "    + Transform( oError:OsCode,    nil ) + ";" + hb_osNewLine() + ;
               "SubSystem: " + Transform( oError:SubSystem, nil ) + ";" + hb_osNewLine() + ;
               "Mensaje: "   + oError:Description, "Atenção" )

   END

   IF lRet

      TRY

         oMsg := CREATEOBJECT ( "CDO.Message" )

         WITH OBJECT oMsg

            :Configuration := oCfg
            :FROM          := cUser // cFrom
            :Sender        := cUser // :Sender = "kapaiabafwh@gmail.com"
            :TO            := cDest
            :Subject       := cSubject
            :TextBody      := cMsg

            FOR x := 1 TO Len( aFiles )

               :AddAttachment( AllTrim( aFiles[ x ] ) )

            NEXT

            :MDNRequested  := .T. // Requiere respuesta
            :DSNOptions    := 14  // Return a DSN if delivery succeeds, fails, or is delayed.


            // :Fields( "urn:schemas:mailheader:disposition-notification-to" ):Value   := cFrom //'retorno@simplesinformatica.com.br'
            // :Fields( "urn:schemas:mailheader:return-receipt-to" ):Value             := cFrom //'retorno@simplesinformatica.com.br'

            :Fields( "urn:schemas:httpmail:importance" ):Value                      := '2'
            :Fields:update()

            :Send()

      END WITH

      lRet := .T.

      CATCH oError

         msg := 'Não Foi Possível Enviar a Mensagem: "' + cSubject + '"' + CRLF
         msg += 'Verifique se existe conexão com a Internet.' + CRLF
         msg += "Destinatário.: " + cDest                     + CRLF
         msg += "Error.:     "  + Str( oError:GenCode )       + CRLF
         msg += "SubC.:      "  + Str( oError:SubCode )       + CRLF
         msg += "OSCode.:    "  + Str( oError:OsCode )        + CRLF
         msg += "SubSystem.: "  + oError:SubSystem            + CRLF
         msg += "Mensagem.:  "  + oError:Description          + CRLF
         msg += "Operação.: ["  + oError:Operation + "]"      + CRLF

         mArgs := oError:Args
         msg += "Argumento: " + ValType( mArgs ) + '[' + AllTrim( Str( Len( mArgs ) ) ) + ']' + CRLF

         IF ValType( mArgs ) = 'C'

            msg += "Argumento: [" + mArgs + "]"

         ELSEIF ValType( mArgs ) = 'A'

            FOR i = 1 TO Len( mArgs )

               msg += Str( i, 1 ) + " [" + mArgs[ i ] + "]" + CRLF

            NEXT

         ENDIF

         MsgInfo( msg )

         lRet := .F.

      END

   ENDIF

   oCfg := NIL
   oMsg := NIL

RETURN( lRet )

// FIN / END
Regards, saludos.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por JoséQuintas »

Softwhouse escreveu: 26 Jan 2026 14:22 Recebí ajuda sobre whatsApp aonde ??
Sobre um pouco de respeito, Algo que vc nunca teve com ninguém.
Essa LIB de whatsapp é golpe. Não entendeu?

hb_SendMail() funcionava ?
O que mudou ?
Verificou isso primeiro antes de perguntar ?
SSL não funciona se harbour não tiver SSL

É email, é whatsapp, tá querendo o que agora afinal ?
Quando a pergunta é email, depois muda pra whatsapp, depois vém com reclamação, ao invés de permitir ajuda, apenas complica as coisas.
Todos sabem que CADA CONTA DE EMAIL exige uma configuração diferente.
Não vai ter solução pronta, a parte sobre pesquisa é inevitável.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Softwhouse
Usuário Nível 3
Usuário Nível 3
Mensagens: 346
Registrado em: 07 Dez 2011 18:44
Localização: Porto Alegre/RS

Re: Envio de e-mail

Mensagem por Softwhouse »

Vou falar pela última vez. Vc não sabe ler? Perguntei sobre o envio de e-mail e cogitei enviar por WhatsApp, ao invés de -emal, com uma lib que o Acbr indica. Se é golpe do Acbr e de quem indicam, não sei. Mas aprenda a ler antes de criticar. Tranquem esse post por favor.
Fernando
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por JoséQuintas »

Fui pesquisar minha rotina de email.....
Encontrei isto

viewtopic.php?t=28246&hilit=mail

Estava resolvido em abril/2025, não entendi

Tem a da minha classe, post antigo, teve mais depois.

viewtopic.php?t=14189

Pois é....
2013, cerca de 13 anos atrás.

Eu que errei, deveria ter pesquisado antes, pra não responder o que ele já sabe há quase um ano.
A culpa é do fórum. tem coisa espalhada, aí fica difícil pesquisar antes de responder kkkkk
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Re: Envio de e-mail

Mensagem por Kapiaba »

Fernando,

O ACBr não possui um componente nativo "ACBrWhatsApp" oficial no pacote principal, mas usuários da comunidade frequentemente utilizam integrações API/REST ou bibliotecas de terceiros como o WPP4Delphi e TInject para conectar o Delphi/Lazarus ao WhatsApp, enviando texto e anexos.

Mantenha a calma, este é um forum de programadores, não leve para o lado pessoal as respostas. As vezes não entendemos as perguntas de primeira. Eu concordo com você: na ânsia de ajudar, o mestre Quintas mais atrapalha do que ajuda. E 95% das respostas dele não ajudam em nada ou geram confusão, não se irrite com isso nem leve para o lado pessoal, as vezes ele nem percebe que exagera .

Em fivewin, tem API para WHATS, funcionando perfeitamente, aqui:

https://fivewin.com.br/index.php?/topic ... ent-304913

Saudações,

Regards, saludos.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Re: Envio de e-mail

Mensagem por JoséQuintas »

Softwhouse escreveu: 26 Jan 2026 15:40 Vou falar pela última vez. Vc não sabe ler? Perguntei sobre o envio de e-mail e cogitei enviar por WhatsApp, ao invés de -emal, com uma lib que o Acbr indica. Se é golpe do Acbr e de quem indicam, não sei. Mas aprenda a ler antes de criticar.
Estou respondendo profissional, você é que está no pessoal.
Perguntou sobre email, cogitou whatsapp.
Isso não se refere a saber ler, e sim sobre não escrever corretamente o que está querendo.
Traduza, porque ficou na mesma, não está definindo se é email ou whatsapp.
Aliás.... se o assunto se tornou whatsapp, o correto seria abrir outro tópico sobre whatsapp, e não coninuar no tópico sobre email.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder