Página 5 de 7

Email pelo Xharbour

Enviado: 17 Jan 2018 14:43
por JoséQuintas
Usando a tranqueira original que vém com XHarbour:
xharbour.png

Email pelo Xharbour

Enviado: 17 Jan 2018 14:46
por JoséQuintas
Usando outra tranqueira original do XHarbour, que dá no mesmo:
xharbour2.png

Email pelo Xharbour

Enviado: 17 Jan 2018 14:50
por JoséQuintas
Conclusão:
Se usar o que vém no XHarbour... não vai funcionar nunca.
Vai depender do que existir nas LIBs adicionais do XHarbour ou em LIB gráfica.

Email pelo Xharbour

Enviado: 17 Jan 2018 15:07
por alaminojunior
Acabo de testar usando as minhas tranqueiras do xHarbour, que diga-se de passagem, tem sustentado a empresa e a família há anos.
Cada dia mais orgulhoso dessa tranqueira véia !!!

A rotina que o colega me enviou por e-mail para análise, funciona !
Enviei o e-mail e simplesmente chegou.

Detalhe que havia passado despercebido antes:
os parâmetros aCC e aBCC se estiverem vazios, ou comente-os ou deixe-os em branco ''. Se passar {} ocorre o erro;

Feito esse ajuste, o e-mail foi enviado.

Lembrando sempre a ativação de login em aplicativos menos seguros precisa estar ativada no painel do Gmail.

Email pelo Xharbour

Enviado: 17 Jan 2018 15:26
por JoséQuintas
Ou provavelmente a rotina que enviaram por email tem uma função substituta pro CreateObject()

Se for com o CreateObject() do XHarbour, significa que ele funciona diferente de tudo que existe.
No Visual Basic 6, mesma mensagem do Harbour.
vb63.png

Email pelo Xharbour

Enviado: 17 Jan 2018 15:36
por alaminojunior
Ou provavelmente a rotina que enviaram por email tem uma função substituta pro CreateObject()
Não, está pura e simples somente com as chamadas para CreateObject. Utilizei a minha que está no pacote do xHarbour (win32ole.prg).

Inclusive agora até mandei com cópia para ele.

Calma Quintas, não há nada de errado com a CreateObject do xHarbour.

Email pelo Xharbour

Enviado: 17 Jan 2018 15:42
por Kapiaba
Eu também uso as "tranqueiras" do xHarbour, e não troco por nada. Funciona de 1000 maravilhosas. Mas nem por isso, vou menosprezar o harbour.
XHBEMAIL.png
Abs

Email pelo Xharbour

Enviado: 17 Jan 2018 15:50
por JoséQuintas
Estou me referindo apenas ao CreateObject() que vém no XHarbour.
Isso vém sendo discutido em vários tópicos, há algum tempo.

Email pelo Xharbour

Enviado: 17 Jan 2018 16:21
por Kapiaba
Mister Quintas mas é essa "tranqueira"(CREATEOBJECT) do xHarbour que eu uso, e funciona SHOW().

Código: Selecionar todos

   TRY

      oCfg := CREATEOBJECT( "CDO.Configuration" )

      WITH OBJECT oCfg:Fields

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver"       ):Value := cServSMTP // Servidor SMTP

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport"   ):Value := nPort

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing"        ):Value := 2 // Remote SMTP = 2, local = 1

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := lAut

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl"       ):Value := lSSL  // .F. Ou .T.

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername"     ):Value := TRIM(cUser)

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/sendtls" ):Value = lTLS  // Com office365, nao funciona nem a pau.

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword"     ):Value := TRIM(cPass)

         oCfg:Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"):Value := 60  // timeout  // era 30

         oCfg: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
Abs.

Email pelo Xharbour

Enviado: 17 Jan 2018 16:23
por JoséQuintas
Não é não.

Tem nas LIBs gráficas, e na fivewin também.
createobject.png
lib.png

Email pelo Xharbour

Enviado: 17 Jan 2018 17:06
por JoséQuintas
Talvez a pergunta correta seja:

Usa CreateObject() no XHarbour, qual das CreateObject() ?

E esse foi o motivo de eu ter chamado o CreateObject() do Xharbour de tranqueira.

Com certeza, se estivesse ok, as LIBs já teriam removido isso delas há muito tempo.

Email pelo Xharbour

Enviado: 17 Jan 2018 17:09
por Kapiaba
Deixe pra lá Mister Quintas. Se entendi a dúvida do Usuário <Shark>, o problema é com gmai.com. Aqui, neste tópico, eu ensino como configurar.

http://fivewin.com.br/index.php?/topic/ ... ent-278073

Abs.

Email pelo Xharbour

Enviado: 17 Jan 2018 17:20
por alaminojunior
o problema é com gmai.com. Aqui, neste tópico, eu ensino como configurar.
O problema do colega a princípio é com o tipo de parâmetro enviado. Por isso o objeto CDO.xxxx não é criado.
Parâmetros aCC e aBCC são esquisitos. Ao contrário do parâmetro de destinatário que aceita uma array com os endereços, estes dois aceitam somente um string com os endereços.

Eu também já havia alertado sobre a configuração do Gmail, que também ocorre com Yahoo e outros. Se não ativar, o e-mail não passa.

Email pelo Xharbour

Enviado: 17 Jan 2018 21:16
por JoséQuintas
Isso explica não funcionar gmail, mas acho que não explica a mensagem de erro.
A não ser que seja um "sub-erro", e retorna como se fosse erro na chamada principal, o que acho difícil.

Email pelo Xharbour

Enviado: 25 Abr 2018 22:34
por Shark
Agradeço a todos que participaram do tópico.

Resumo: o código utilizando CDO funciona muito bem. Entretanto, se passarmos parâmetros com espaços no inicio ou no final das strings, parâmetros vazios o qualquer parâmetro inválido dá esse erro DISP_E_MEMBER_NOTFOUND.

O tipo de mensagem de erro é que é inadequada e nos remete a pensar que é um erro de classe ou algo interno.

Enviar email já está resolvido!

Agora, Gostaria de aproveitar o tópico para saber se algum colega consegue receber e-mails via código e qual método utiliza.