Clipper On Line • Ver Tópico - Email pelo Xharbour

Email pelo Xharbour

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

Moderador: Moderadores

 

Re: Email pelo Xharbour

Mensagempor sygecom » 08 Fev 2011 19:34

Veja que minha função está dentro de um TRY, é que as vezes se não configurar corretamente pode cair no erro mesmo, mas é só configurar certinho, usuario, senha, endereço smtp, se tem SSL e etc.. que vai certinho.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7006
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Re: Email pelo Xharbour

Mensagempor esbasso » 08 Fev 2011 20:08

MESMO ERRO usando sua função, tirei o TRY para poder colar o erro aqui

rror CDO.Message/3 DISP_E_MEMBERNOTFOUND: SEND - oError:genCode = 1001
Called from C:\xHarbour121\source\rtl\win32ole.prg->TOLEAUTO:SEND(0)
Called from C:\xHarbour\rotinas\hcdoemail.000->CDO_ENVIA_MAIL(258)
Called from C:\xHarbour\rotinas\hcdoemail.000->CONFIG_MAIL(225)
Called from C:\xHarbour\Estoque6\ESTOQUE.000->MAIN(268)

HwGUI 2.17 xHarbour build 1.2.1 Intl. (SimpLex) (Rev. 6733)

este erro não é questão de configurar
mas da falta de propriedade ou metodo do objeto OLE
a não ser que esta retornando uma mensagem errada sobre o erro
Luis Fernando Basso
Desenvolvedor VFP + XHARBOUR + HWGUI
lfbasso@gmail.com
http://www.engersoft.com.br
esbasso
Colaborador

Colaborador
 
Mensagens: 325
Data de registro: 24 Jan 2007 16:49
Cidade/Estado: CHAPECO/SC
Curtiu: 0 vez
Mens.Curtidas: 8 vezes

Re: Email pelo Xharbour

Mensagempor sygecom » 08 Fev 2011 21:10

É no mínimo estranho mesmo. Testei aqui com Windows 7 e com Windows XP e deu certo...
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7006
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Re: Email pelo Xharbour

Mensagempor alaminojunior » 08 Fev 2011 21:47

Eu já notei erros como este, quando acontecía de não encontrar os arquivos para anexar. Não sei se é o caso.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar de usuário

alaminojunior
Colaborador

Colaborador
 
Mensagens: 1689
Data de registro: 16 Dez 2005 20:26
Cidade/Estado: Ubatuba - SP
Curtiu: 27 vezes
Mens.Curtidas: 11 vezes

Re: Email pelo Xharbour

Mensagempor esbasso » 08 Fev 2011 22:01

sim
resolvido
na realidade a mensagem não significa exatamente o que se supõe

MSDN:

Invoke returns DISP_E_MEMBERNOTFOUND if one of the following conditions occurs:
A member or parameter with the specified DISPID and matching cArgs cannot be found, and the parameter is not optional.
The member is a void function, and the caller did not set pVarResult to Null.
The member is a read-only property, and the caller set wFlags to DISPATCH_PROPERTYPUT or DISPATCH_PROPERTYPUTREF.

então o que ocasionava o erro era um erro de configuração
no caso foi esta linha
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := .F. //wSSL_EMAIL

SÓ FUNCIONA no meu caso se for FALSO
Luis Fernando Basso
Desenvolvedor VFP + XHARBOUR + HWGUI
lfbasso@gmail.com
http://www.engersoft.com.br
esbasso
Colaborador

Colaborador
 
Mensagens: 325
Data de registro: 24 Jan 2007 16:49
Cidade/Estado: CHAPECO/SC
Curtiu: 0 vez
Mens.Curtidas: 8 vezes

Re: Email pelo Xharbour

Mensagempor alaminojunior » 08 Fev 2011 22:27

Mas e se o servidor exigir que seja SSL ?
Não sei, não me lembro se faz alguma diferença (faz algum tempo que codifiquei esta função no sistema) mas eu linkey junto a tipssl.lib.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar de usuário

alaminojunior
Colaborador

Colaborador
 
Mensagens: 1689
Data de registro: 16 Dez 2005 20:26
Cidade/Estado: Ubatuba - SP
Curtiu: 27 vezes
Mens.Curtidas: 11 vezes

Re: Email pelo Xharbour

Mensagempor Wesllen » 24 Fev 2011 09:58

Bom dia,

Aproveitando o Topic.... alguém conhece uma forma de anexar arquivo html para enviar junto com arquivos XML?
Estou tentando fazer isso mas sempre que anexo o html dá erro e a mensagem não é enviada. Se eu retiro o html a mensagem segue normalmente.
Preciso fazer isso que que as NFe já sejam enviadas com os respectivos boletos.

Obs. uso o HB_SENDMAIL.

Agradeço pela ajuda.

[]'s
Wesllen
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 9
Data de registro: 19 Nov 2008 15:02
Cidade/Estado: Varginha
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: Email pelo Xharbour

Mensagempor rochinha » 24 Fev 2011 12:43

Amiguinhos,

Para o envio via CDO estou usando somente este trecho na configuração:
  objCDOSYSCon:=TOleAuto():New( "CDO.Configuration" )
  objCDOSYSCon:Fields:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver"):Value       := smtp_server
  objCDOSYSCon:Fields:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport"):Value   := smtp_Port
  objCDOSYSCon:Fields:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing"):Value        := 2
  objCDOSYSCon:Fields:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"):Value := 1
  objCDOSYSCon:Fields:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername"):Value     := smtp_user
  objCDOSYSCon:Fields:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword"):Value     := smtp_pass


Lembrando que CDO só vai funcionar se tiver conectado a internet pois ele ira se configurar usando o site da Micro$oft.

Para o envio de conteúdo em texto plano ou HTML eu faço assim:
...
  objCDOSYSMail:Configuration := objCDOSYSCon
  objCDOSYSMail:From          := mail_from
  objCDOSYSMail:To            := mail_to
  objCDOSYSMail:Subject       := mail_subject
  if lHtml // critica se quero HTML ou Texto plano
     objCDOSYSMail:HTMLBody   := mail_message // + CRLF + CRLF + MemoRead( mail_attach )
  else
     objCDOSYSMail:TextBody   := mail_message // + CRLF + CRLF + MemoRead( mail_attach )
  endif


No BLAT eu faço assim:
     BlatCMD := [ blat.txt] + ;
                [ -to ]       + alltrim(cto) + ;
                [ -server ]   + alltrim(cserver) + ;
                ...
                iif( lHtml, [ -html ], [] )


Para o BLAT.TXT faço assim:
...
    if lHtml
        cBody := FormHtml( cSubject, cBody )
     endif
     memowrit( "blat.txt", cbody )
...


Function FormHtml( cSubject, cBody )
   Local cOpen  := '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">' + CRLF
   Local cClose := CRLF + 'Nossa empresa envia email somente para pessoas e empresas cadastradas em nosso sistema.' + CRLF + ;
                          'Caso tenha duvidas favor entrar em contato com nossa central de atendimento ao cliente.'
   cHTML := ;
      '<html>'  + CRLF + ;
      '<head>'  + CRLF + ;
      '   <meta http-equiv="Content-Type"' + CRLF + ;
      '         content="text/html; charset=iso-8859-1">' + CRLF + ;
      '</head>' + CRLF + ;
      '<body>'  + CRLF + ;
      '<pre>'   + CRLF + ;
       cBody    + CRLF + ;
      '</pre>'  + CRLF + ;
      '</body>' + CRLF + ;
      '</html>'
   Return cOpen + cHTML + cClose
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Email pelo Xharbour

Mensagempor Shark » 10 Jan 2018 23:41

Este tópico é bem antigo mas o meiu problema é idêntico e bem recente. Alguém conseguiu afinal desvendar o mistério do objeto "SEND" não existir no CDO.Message?

Imagino que como está sendo utilizado um recurso externo através de OLE, pode ser um problema relacionado a versões de sistema operacional nao?

Atualmente qual método usado para enviar email usando xHarbour?
Shark
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 28
Data de registro: 25 Set 2017 21:42
Cidade/Estado: Brasília - DF
Curtiu: 5 vezes
Mens.Curtidas: 3 vezes

Email pelo Xharbour

Mensagempor alaminojunior » 11 Jan 2018 08:15

Alguém conseguiu afinal desvendar o mistério do objeto "SEND" não existir no CDO.Message?


       TRY
         oMsg:= CREATEOBJECT ( "CDO.Message" )
           WITH OBJECT oMsg
                oMsg:MDNRequested = .T.
                oMsg:Configuration = oCfg
                oMsg:From = cFrom
                oMsg:To = aTo[i]
                oMsg:CC = aCC
                oMsg:BCC = aBCC
                oMsg:Subject = cSubject
                oMsg:Sender = cdpar000->fantasia
                oMsg:ReplyTo = cFrom
                oMsg:Organization = cdpar000->razao
                if !uso
                   cMsg = strtran( cMsg, chr(13)+chr(10) , '<br>' )
                   oMsg:HTMLBody = "<h3>"+cMsg+"</h3>"
                else
                   oMsg:TextBody = cMsg
                endif         
                For x := 1 To Len( aFiles )
                    oMsg:AddAttachment(AllTrim(aFiles[x]))
                Next
                IF vEMAIL_CONF
                   oMsg:Fields("urn:schemas:mailheader:disposition-notification-to"):Value:= cFrom
                   oMsg:Fields("urn:schemas:mailheader:return-receipt-to"):Value:= cFrom
                ENDIF
                oMsg:Fields:update()
                oMsg:Send()
           END WITH
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar de usuário

alaminojunior
Colaborador

Colaborador
 
Mensagens: 1689
Data de registro: 16 Dez 2005 20:26
Cidade/Estado: Ubatuba - SP
Curtiu: 27 vezes
Mens.Curtidas: 11 vezes

Email pelo Xharbour

Mensagempor rochinha » 11 Jan 2018 11:47

Amiguinhos,

shark
O CDO é bem antigo e vinha automaticamente implantado nos Windows antes da versão 7. Após isto a CDOSYS.DLL até vem, mas depende de instalação, manual ou automatica pelo Programas e Recursos no que se refere a Rede e Exchange.

Procure por *cdo* na pasta System32 ou SYSWOW64 e registre na unha. Lembrando de estar no prompt com direitos Administrador.

Direitos de Administrador não é o mesmo que usar o usuário Administrador. Algumas instalações do Windows escondem o verdadeiro administrador. Para encontrá-lo:

net user administrador /active:yes
ou
net user administrator /active:yes
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Email pelo Xharbour

Mensagempor Shark » 14 Jan 2018 00:41

Rochinha Amiguinho...

Seguindo o conceito de sua orientação: devo deduzir que para utilizar o método de envio de email usando "CDO" terei que intervir em cada máquina/windows de meus clientes? Pelo que entendi é mais ou menos isso que sugere. Confirma?
Shark
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 28
Data de registro: 25 Set 2017 21:42
Cidade/Estado: Brasília - DF
Curtiu: 5 vezes
Mens.Curtidas: 3 vezes

Email pelo Xharbour

Mensagempor rochinha » 14 Jan 2018 01:43

Amiguinhos,

shark
Com certeza, pois se o cdosys.dll, mesmo existindo não estiver registrado o recurso não funcionará. Lembrando que a Microsoft desligou alguns recursos que ficam presentes na instalação mas inativos sendo ativados após configurações nos recursos da máquina.

Digite cdosys.dll windows 7 download no Google e veja os cinco primeiros resultados. Te levam para baixar a .DLL correspondente ao S.O outros podem te levar a baixar "Fixers" que na verdade mentem que falta uma ou outra coisa e fazer voce baixar um programa que não faz nada e te dá prejuízo.

https://www.dll4free.com

[url=http://www.dlldownloader.com/cdosys-dll/]http://www.dlldownloader.com[/url

https://pt.dll-files.com

http://originaldll.com

Após baixar passe o Antivirus nos arquivos e copie para a pasta System32 e registre-os. Entre no seu aplicativo e veja se funciona.

Eu também baixei mas não tenho prvisão de quando farei o teste.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Email pelo Xharbour

Mensagempor Shark » 14 Jan 2018 03:01

Amigão... (Rochinha)

Visto que esta intervenção profunda no windows dos usuários de nossos softwares não é tecnologicamente digna (apesar de possível), qual seria a melhor solução, afinal, para tratar email´s por nós programadores do moribundo, mas, persistente clipper word? Confesso que estou profundamente indignado com essa limitação considerando tratamento de emails uma técnica extremamente retrograda. Diga lá irmão... Como saltar essa barreira?
Shark
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 28
Data de registro: 25 Set 2017 21:42
Cidade/Estado: Brasília - DF
Curtiu: 5 vezes
Mens.Curtidas: 3 vezes

Email pelo Xharbour

Mensagempor alaminojunior » 14 Jan 2018 08:02

Sem querer duvidar do nosso amiguinho Rochinha, não tenho tido reclamação sobre isso por parte dos clientes.
E temos sistema instalados em várias versões de Windows: XP, Seven, 8, 10 ...
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar de usuário

alaminojunior
Colaborador

Colaborador
 
Mensagens: 1689
Data de registro: 16 Dez 2005 20:26
Cidade/Estado: Ubatuba - SP
Curtiu: 27 vezes
Mens.Curtidas: 11 vezes

Anterior Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 7 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro