Jump to content
Fivewin Brasil

Enviar email pelo programa - Atualização


ricardomouramarques

Recommended Posts

Olha só, antes de mais nada informo que o código original é do "Alessandro Seribeli Barreto - Ale SB", eu só fiz algumas modificações e inclui alguas opções.

Ao Ale SB, parabéns pelo código.

O que modifiquei:

- Possibilidade de enviar email de de vários Servidores (hotmail, bol, uol, gmail, yahoo, etc).

- Envio de email para mais de um destinatário

- CC (com cópia)

- CCO (com cópia oculta)

- Escolha do(s) arquivo(s) a indexar

- Editar o assunto

- Editar a mensagem

Pra quem precisa, acredito que seja um bom ponto de partida.


***********************************************************

#include "fivewin.ch"

Static cAttach := ""

Static aAttach := {}

********************************************************************************

Function Main()

local cUser := Space(50), cPass := Space(15), cRemt := Space(50), ;

cDest := Space(250), cTime, cTxt := Space(10), cAssunto := Space(100),;

cCC := Space(250), cCCO := Space(250)

local lSair := .f.

local oDlg, oGet[ 8 ], oSay[12], oBtn[2], nItem := 0

local cDados, i

Private aServs := { {"@hotmail.com", "smtp.live.com", 25, .t. },;

{"@yahoo.com.br", "smtp.mail.yahoo.com.br", 25, .f. },;

{"@gmail.com.br", "smtp.gmail.com.br", 465, .t. },;

{"@uol.com.br", "smtp.uol.com.br", 25, .f. },;

{"@bol.com.br", "smtp.bol.com.br", 25, .f. },;

{"@terra.com.br", "smtp.terra.com.br", 25, .f. },;

{"@ig.com.br", "smtp.ig.com.br", 465, .t. },;

{"@ibest.com.br", "smtp.ibest.com.br", 465, .t. },;

{"@itelefonica.com.br","smtp.itelefonica.com.br", 25, .f. } }

Private aDomin := {}, nServ := 1

for i := 1 to len( aServs )

AADD( aDomin, aServs[1] )

next

if file("dadosmail.dat")

cDados := StrTran(MemoRead( "dadosmail.dat" ), "@hotmail.com", "")

cUser := Memoline( cDados, 250, 1)

cRemt := Memoline( cDados, 250, 2)

if MlCount( cDados ) >= 3

nServ := Val(Alltrim(Memoline(cDados, 250, 3)))

endif

endif

DEFINE DIALOG oDlg TITLE "Envio de eMail" From 0, 0 to 620, 600 Pixel

*****--- SAY's ---**************************************************************

@ 002, 006 SAY oSay[1] PROMPT "Usuário - Somente o Nome" OF oDlg SIZE 100, 08 COLOR CLR_BLUE PIXEL

@ 022, 006 SAY oSay[3] PROMPT "Senha" OF oDlg SIZE 50, 08 COLOR CLR_BLUE PIXEL

@ 042, 006 SAY oSay[4] PROMPT "Remetente - Somente o Nome" OF oDlg SIZE 100, 08 COLOR CLR_BLUE PIXEL

@ 052, 088 SAY oSay[2] PROMPT aDomin[nServ] OF oDlg SIZE 50, 08 COLOR CLR_BLACK PIXEL

@ 064, 006 SAY oSay[5] PROMPT "Para:" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL

@ 074, 006 SAY oSay[10] PROMPT "C/C:" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL

@ 084, 006 SAY oSay[11] PROMPT "C/CO:" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL

@ 094, 006 SAY oSay[9] VAR "Assunto" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL update

@ 124,006 SAY oSay[7] VAR "Mensagem" OF oDlg SIZE 80, 08 COLOR CLR_BLUE PIXEL update

@ 210,006 SAY oSay[ 8 ] VAR "Anexos" OF oDlg SIZE 80, 08 COLOR CLR_BLUE PIXEL update

@ 270,006 SAY oSay[6] VAR cTime OF oDlg SIZE 50, 08 COLOR CLR_RED PIXEL update

*****OUTROS*************************************************************

@ 010, 006 GET oGet[1] VAR cUser SIZE 80, 10 PIXEL OF oDlg PICTURE "@" Update

oGet[1]:bValid := {|lRet| if(lRet := !Empty(cUser),(oGet[3]:VarPut(cUser), oGet[3]:Refresh()), ), .t. }

@ 010, 088 COMBOBOX oComb VAR nServ ITEMS aDomin OF oDlg SIZE 100, 80 PIXEL;

ON CHANGE (oSay[2]:SetText( aDomin[nServ] ) )

@ 030, 006 GET oGet[2] VAR cPass SIZE 80, 10 PIXEL OF oDlg Update

oGet[2]:lPassWord := .T.

@ 050, 006 GET oGet[3] VAR cRemt SIZE 80, 10 PIXEL OF oDlg PICTURE "@" Update

@ 062, 040 GET oGet[4] VAR cDest SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 072, 040 GET oGet[5] VAR cCC SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 082, 040 GET oGet[6] VAR cCCO SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 092, 040 GET oGet[6] VAR cAssunto SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 132,006 GET oGet[5] VAR cTxt OF oDlg SIZE 288, 70 COLOR CLR_BLUE, CLR_WHITE PIXEL update MEMO

@ 218,006 ListBox oList Var nItem ITEMS aAttach Size 268,50 Pixel

*****--- BOTÕES ---*************************************************************

@ 290, 010 BUTTONBMP oBtn[1] PROMPT "Confirma" OF oDlg ;

SIZE 30,10 PIXEL ;

ACTION ( cTime := "Aguarde...", 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çao"),), cTime := "", oSay[6]:Refresh() )

oBtn[1]:bWhen := {|| !Empty(cUser) }

@ 290, 050 BUTTONBMP oBtn[2] PROMPT "Sair" OF oDlg ;

SIZE 30,10 PIXEL ;

ACTION ( lSair := .t., oDlg:End() )

oBtn[2]:lCancel := .t.

@ 218, 274 Button "ADD" Size 20,08 Pixel Action ADDItem()

@ 228, 274 Button "DEL" Size 20,08 Pixel Action DELItem()

ACTIVATE DIALOG oDlg CENTERED VALID lSair

return nil

********************************************************************************

Function Config_Mail(_cUser,cPass,_cRemt,cDest, cCC, cCCO, cTxt, cSubject)

local lRet := .f.

local oCfg, oError

local cServ := aServs[nServ][2] //--> SERVIDOR SMTP - "smtp.servidor.com.br"

local nPort := aServs[nServ][3]

local lAut := .t.

local lSSL := aServs[nServ][4]

if Empty(cPass) .or. Empty(_cRemt) .or. Empty(cDest)

? "Preencha todos Campos"

return .f.

else

cUser := alltrim(_cUser) + aDomin[nServ]

cRemt := alltrim(_cRemt) + aDomin[nServ]

endif

TRY

oCfg := CREATEOBJECT( "CDO.Configuration" )

WITH OBJECT oCfg:Fields

:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cServ

: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+ ;

"Error: " + Transform(oError:GenCode, nil) + ";" +CRLF+ ;

"SubC: " + Transform(oError:SubCode, nil) + ";" +CRLF+ ;

"OSCode: " + Transform(oError:OsCode, nil) + ";" +CRLF+ ;

"SubSystem: " + Transform(oError:SubSystem, nil) + ";" +CRLF+ ;

"Mensaje: " + oError:Description, "Atenção" )

END

//--> FIM DAS CONFIGURAÇOES.

if lRet

lRet := Envia_Mail(oCfg,cRemt,cDest, cCC, cCCO, cTxt, cSubject)

MemoWrit("dadosmail.dat", _cUSER+CRLF+_cREMT+CRLF+Str(nServ))

endif

Return lRet

********************************************************************************

Function Envia_Mail(oCfg,cFrom, cTo, cCC, cBCC, cMsg, cSubject)

local cToken

local lRet := .f.

cTo := Destinatarios( cTo ) //--> PARA

cCC := Destinatarios( cCC ) //--> COM COPIA

cBCC := Destinatarios( cBCC ) //--> COM COPIA OCULTA

TRY

oMsg := CREATEOBJECT ( "CDO.Message" )

WITH OBJECT oMsg

:Configuration = oCfg

:From = cFrom

:To = cTo

:CC = cCC

:BCC = cBCC

:Subject = cSubject

:TextBody = cMsg

For x := 1 To Len( aAttach )

if aAttach[x] <> NIL

:AddAttachment(AllTrim(aAttach[x]))

endif

Next

:Send()

END WITH

lRet := .t.

CATCH

MsgInfo("Não Foi Possível enviar a mensagem")

lRet := .f.

END

Return lRet

//----------------------------------------------------------------

Function ADDItem()

Local cArq := cGetFile32("*.*", "ADD Anexo", , ,.f.)

if file(cArq)

oList:ADD(Alltrim(cArq))

oList:Hide()

oList:Refresh()

oList:Show()

endif

Return NIL

//----------------------------------------------------------------

Function DELItem()

Local nIT := oList:GetSel()

oList:DEL( nIT )

oList:Hide()

oList:Refresh()

oList:Show()

Return NIL

//------------------------------------------------------------

Function Destinatarios( cVar )

local i

local aCars := {",", "/", "\"}

for i := 1 to len( aCars )

cVar := StrTran( cVar, aCars, ";" )

next

Return cVar

***********************************************************

id=code>id=code>

Ricardo Marques

ass.png

Editado por - ricardomouramarques on 18/01/2011 02:35:56

Link to comment
Share on other sites

  • Replies 67
  • Created
  • Last Reply

Top Posters In This Topic

Olha só, antes de mais nada informo que o código original é do "Alessandro Seribeli Barreto - Ale SB", eu só fiz algumas modificações e inclui alguas opções.

Ao Ale SB, parabéns pelo código.

O que modifiquei:

- Possibilidade de enviar email de de vários Servidores (hotmail, bol, uol, gmail, yahoo, etc).

- Envio de email para mais de um destinatário

- CC (com cópia)

- CCO (com cópia oculta)

- Escolha do(s) arquivo(s) a indexar

- Editar o assunto

- Editar a mensagem

Pra quem precisa, acredito que seja um bom ponto de partida.


***********************************************************

#include "fivewin.ch"

Static cAttach := ""

Static aAttach := {}

********************************************************************************

Function Main()

local cUser := Space(50), cPass := Space(15), cRemt := Space(50), ;

cDest := Space(250), cTime, cTxt := Space(10), cAssunto := Space(100),;

cCC := Space(250), cCCO := Space(250)

local lSair := .f.

local oDlg, oGet[ 8 ], oSay[12], oBtn[2], nItem := 0

local cDados, i

Private aServs := { {"@hotmail.com", "smtp.live.com", 25, .t. },;

{"@yahoo.com.br", "smtp.mail.yahoo.com.br", 25, .f. },;

{"@gmail.com.br", "smtp.gmail.com.br", 465, .t. },;

{"@uol.com.br", "smtp.uol.com.br", 25, .f. },;

{"@bol.com.br", "smtp.bol.com.br", 25, .f. },;

{"@terra.com.br", "smtp.terra.com.br", 25, .f. },;

{"@ig.com.br", "smtp.ig.com.br", 465, .t. },;

{"@ibest.com.br", "smtp.ibest.com.br", 465, .t. },;

{"@itelefonica.com.br","smtp.itelefonica.com.br", 25, .f. } }

Private aDomin := {}, nServ := 1

for i := 1 to len( aServs )

AADD( aDomin, aServs[1] )

next

if file("dadosmail.dat")

cDados := StrTran(MemoRead( "dadosmail.dat" ), "@hotmail.com", "")

cUser := Memoline( cDados, 250, 1)

cRemt := Memoline( cDados, 250, 2)

if MlCount( cDados ) >= 3

nServ := Val(Alltrim(Memoline(cDados, 250, 3)))

endif

endif

DEFINE DIALOG oDlg TITLE "Envio de eMail" From 0, 0 to 620, 600 Pixel

*****--- SAY's ---**************************************************************

@ 002, 006 SAY oSay[1] PROMPT "Usuário - Somente o Nome" OF oDlg SIZE 100, 08 COLOR CLR_BLUE PIXEL

@ 022, 006 SAY oSay[3] PROMPT "Senha" OF oDlg SIZE 50, 08 COLOR CLR_BLUE PIXEL

@ 042, 006 SAY oSay[4] PROMPT "Remetente - Somente o Nome" OF oDlg SIZE 100, 08 COLOR CLR_BLUE PIXEL

@ 052, 088 SAY oSay[2] PROMPT aDomin[nServ] OF oDlg SIZE 50, 08 COLOR CLR_BLACK PIXEL

@ 064, 006 SAY oSay[5] PROMPT "Para:" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL

@ 074, 006 SAY oSay[10] PROMPT "C/C:" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL

@ 084, 006 SAY oSay[11] PROMPT "C/CO:" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL

@ 094, 006 SAY oSay[9] VAR "Assunto" OF oDlg SIZE 35, 08 COLOR CLR_BLUE PIXEL update

@ 124,006 SAY oSay[7] VAR "Mensagem" OF oDlg SIZE 80, 08 COLOR CLR_BLUE PIXEL update

@ 210,006 SAY oSay[ 8 ] VAR "Anexos" OF oDlg SIZE 80, 08 COLOR CLR_BLUE PIXEL update

@ 270,006 SAY oSay[6] VAR cTime OF oDlg SIZE 50, 08 COLOR CLR_RED PIXEL update

*****OUTROS*************************************************************

@ 010, 006 GET oGet[1] VAR cUser SIZE 80, 10 PIXEL OF oDlg PICTURE "@" Update

oGet[1]:bValid := {|lRet| if(lRet := !Empty(cUser),(oGet[3]:VarPut(cUser), oGet[3]:Refresh()), ), .t. }

@ 010, 088 COMBOBOX oComb VAR nServ ITEMS aDomin OF oDlg SIZE 100, 80 PIXEL;

ON CHANGE (oSay[2]:SetText( aDomin[nServ] ) )

@ 030, 006 GET oGet[2] VAR cPass SIZE 80, 10 PIXEL OF oDlg Update

oGet[2]:lPassWord := .T.

@ 050, 006 GET oGet[3] VAR cRemt SIZE 80, 10 PIXEL OF oDlg PICTURE "@" Update

@ 062, 040 GET oGet[4] VAR cDest SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 072, 040 GET oGet[5] VAR cCC SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 082, 040 GET oGet[6] VAR cCCO SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 092, 040 GET oGet[6] VAR cAssunto SIZE 254, 10 PIXEL OF oDlg PICTURE "@" Update

@ 132,006 GET oGet[5] VAR cTxt OF oDlg SIZE 288, 70 COLOR CLR_BLUE, CLR_WHITE PIXEL update MEMO

@ 218,006 ListBox oList Var nItem ITEMS aAttach Size 268,50 Pixel

*****--- BOTÕES ---*************************************************************

@ 290, 010 BUTTONBMP oBtn[1] PROMPT "Confirma" OF oDlg ;

SIZE 30,10 PIXEL ;

ACTION ( cTime := "Aguarde...", 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çao"),), cTime := "", oSay[6]:Refresh() )

oBtn[1]:bWhen := {|| !Empty(cUser) }

@ 290, 050 BUTTONBMP oBtn[2] PROMPT "Sair" OF oDlg ;

SIZE 30,10 PIXEL ;

ACTION ( lSair := .t., oDlg:End() )

oBtn[2]:lCancel := .t.

@ 218, 274 Button "ADD" Size 20,08 Pixel Action ADDItem()

@ 228, 274 Button "DEL" Size 20,08 Pixel Action DELItem()

ACTIVATE DIALOG oDlg CENTERED VALID lSair

return nil

********************************************************************************

Function Config_Mail(_cUser,cPass,_cRemt,cDest, cCC, cCCO, cTxt, cSubject)

local lRet := .f.

local oCfg, oError

local cServ := aServs[nServ][2] //--> SERVIDOR SMTP - "smtp.servidor.com.br"

local nPort := aServs[nServ][3]

local lAut := .t.

local lSSL := aServs[nServ][4]

if Empty(cPass) .or. Empty(_cRemt) .or. Empty(cDest)

? "Preencha todos Campos"

return .f.

else

cUser := alltrim(_cUser) + aDomin[nServ]

cRemt := alltrim(_cRemt) + aDomin[nServ]

endif

TRY

oCfg := CREATEOBJECT( "CDO.Configuration" )

WITH OBJECT oCfg:Fields

:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cServ

: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+ ;

"Error: " + Transform(oError:GenCode, nil) + ";" +CRLF+ ;

"SubC: " + Transform(oError:SubCode, nil) + ";" +CRLF+ ;

"OSCode: " + Transform(oError:OsCode, nil) + ";" +CRLF+ ;

"SubSystem: " + Transform(oError:SubSystem, nil) + ";" +CRLF+ ;

"Mensaje: " + oError:Description, "Atenção" )

END

//--> FIM DAS CONFIGURAÇOES.

if lRet

lRet := Envia_Mail(oCfg,cRemt,cDest, cCC, cCCO, cTxt, cSubject)

MemoWrit("dadosmail.dat", _cUSER+CRLF+_cREMT+CRLF+Str(nServ))

endif

Return lRet

********************************************************************************

Function Envia_Mail(oCfg,cFrom, cTo, cCC, cBCC, cMsg, cSubject)

local cToken

local lRet := .f.

cTo := Destinatarios( cTo ) //--> PARA

cCC := Destinatarios( cCC ) //--> COM COPIA

cBCC := Destinatarios( cBCC ) //--> COM COPIA OCULTA

TRY

oMsg := CREATEOBJECT ( "CDO.Message" )

WITH OBJECT oMsg

:Configuration = oCfg

:From = cFrom

:To = cTo

:CC = cCC

:BCC = cBCC

:Subject = cSubject

:TextBody = cMsg

For x := 1 To Len( aAttach )

if aAttach[x] <> NIL

:AddAttachment(AllTrim(aAttach[x]))

endif

Next

:Send()

END WITH

lRet := .t.

CATCH

MsgInfo("Não Foi Possível enviar a mensagem")

lRet := .f.

END

Return lRet

//----------------------------------------------------------------

Function ADDItem()

Local cArq := cGetFile32("*.*", "ADD Anexo", , ,.f.)

if file(cArq)

oList:ADD(Alltrim(cArq))

oList:Hide()

oList:Refresh()

oList:Show()

endif

Return NIL

//----------------------------------------------------------------

Function DELItem()

Local nIT := oList:GetSel()

oList:DEL( nIT )

oList:Hide()

oList:Refresh()

oList:Show()

Return NIL

//------------------------------------------------------------

Function Destinatarios( cVar )

local i

local aCars := {",", "/", "\"}

for i := 1 to len( aCars )

cVar := StrTran( cVar, aCars, ";" )

next

Return cVar

***********************************************************

id=code>id=code>

Ricardo Marques

ass.png

Editado por - ricardomouramarques on 18/01/2011 02:35:56

Link to comment
Share on other sites

apenas lembrando que o terra.. está mudando

a porta para 587

veja o comunicado:

O Terra está implantando de forma gradual a , o qual sugere que todas as empresas de telecomunicações bloqueiem o acesso a porta 25 para diminuir o volume de spams na Internet. Essa implantação afetará a configuração atual para envio de e-mails através de programas como Outlook (Microsoft), Thunderbird (Mozila), Mail (Apple), entre outros.

Para corrigir as configurações do seu programa de e-mail é necessário alterar a porta do servidor SMTP de 25 para 587. Se você utiliza o webmail, não precisa fazer nenhuma mudança: o Terra já fez isso por você.

vitor

s.b.c.

Link to comment
Share on other sites

Parabens ao Ale (SB) E ao Ricardo Marques por disponibilizar este codigo.

Testei com anexos pdf e zip e funcionou perfeito, , hotmail, yahoo, so no gmail.com tirei o br, smtp tb tire o br.

Ricardo

Uma Unica sugestao,se vc permitir.

Um tabela com destinatarios.

So falta colocar um botao gravar destinatarios cc,

Obrigado Excelente codigo.

Clipper,XHarbour FiveWin 6,12

Editado por - alceu11 on 17/01/2011 10:12:38

Link to comment
Share on other sites

citação:

Olá, dúvida:

Se eu quiser o usar o EMAIL DO POP, http://www.pop.com.br Como é que eu faço??

Obg.

Abraços.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066


id=quote>id=quote>

{"POP","pop3.pop.com.br","smpt.pop.com.br",.f.,25,110,.f.}

Como postado seria:

{"@pop.com.br","smpt.pop.com.br", 25, .f. }

Francisco J S Barbosa

frkiko@pop.com.br

Belo Horizonte - MG

FiveWin for Harbour 2.4 - Workshop

Honestidade não é qualidade é obrigação.

Editado por - frkiko on 17/01/2011 10:43:33

Link to comment
Share on other sites

citação:

citação:

Olá, dúvida:

Se eu quiser o usar o EMAIL DO POP, http://www.pop.com.br Como é que eu faço??

Obg.

Abraços.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066


id=quote>id=quote>

{"pop3.pop.com.br","smpt.pop.com.br", 25, .f. }

Francisco J S Barbosa

frkiko@pop.com.br

Belo Horizonte - MG

FiveWin for Harbour 2.4 - Workshop

Honestidade não é qualidade é obrigação.


id=quote>id=quote>

Gracias meu querido.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066

Link to comment
Share on other sites

AMIGOS

obrigado pela ajuda, mas copiei o código na integra CRTL+C e CRTL+V, e fiz o teste.

Pausei o antivirus (eu particularmente acho errado), mesmo assim ele não envia.

Mandei com Anexos, Sem Anexos, etc....

Será que está errado meus amigos..

00001rm.jpg

Obrigado a todos.

Márcio :.

informaisvrb@gmail.com

FWHX 2.6+ SQLLIB + xDev + rpv + MYSQL 5.0 / fwh808+sqllib(atual)

Msn.: mastermarvrb@msn.com

Editado por - marcio on 17/01/2011 14:11:38

Editado por - marcio on 17/01/2011 14:12:26

Link to comment
Share on other sites

Bom,

Atendento pedido, fiz algumas alterações:

- Gerenciador de Contatos

- Criação de Grupos de Distribuição

- Botão para selecionar o contato ou Grupo

- Salva altomaticamente (ou não) os novos emails

Dica: acesse o menu "Sistema"

Como o código ficou um pouco grande, coloquei em dicas:

http://www.fivewin.com.br/exibedicas.asp?id=1063

Há também uma função que pega um código HexaDecimal, converte em binário e salva o arquivo ( um bitmap que será usado pelo proprio programa ).

Ricardo Marques

ass.png

Link to comment
Share on other sites

  • 3 weeks later...

citação:

citação:

só tirei o .br do endereço do gmail.

Márcio :.


id=quote>id=quote>

Nessa alteração que postei em Dicasa, eu já removi o .br do gmail e inclui o POP do "Kapiaba".

Ricardo.


id=quote>id=quote>

Ricardo, EXCELENTE TRABALHO, estou fazendo testes, farei algumas modificações para meu gosto pessoal, SE VOCÊ me permite.

Muito obrigado.

Abraços.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066

Link to comment
Share on other sites

citação:

no .hotmail funciona


id=quote>id=quote>

No BOL também, mas quando tento pelo POP, não vai. Será a PORTA que está errada??

Está assim:


{"@pop.com.br", "smpt.pop.com.br", 25, .f. },;

id=code>id=code>

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066

Link to comment
Share on other sites

Ricardo, tem um erro nesta funcao aqui, e nao consigo resolver, poderia por favor dar uma olhada?


//-----------------------------------------------------------

FUNCTION ConfCont( oGet, cVar )

LOCAL i

oCon:Load()

cVar := Alltrim(cVar)

IF LEN(cVar) > 0

cVar := Alltrim(cVar)+";"

ENDIF

FOR i := 1 to len( oListCont:aItems )

cVar := cVar+if(i>1,";", "")+Alltrim(oCon:Contato)

NEXT

? cvar

cVar+=Space(100)

oGet:SetText( cVar )

oDlgCon:End()

oDlgInc:End()

RETURN NIL

id=code>id=code>

Obrigado.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066

Editado por - kapiaba on 07/02/2011 17:52:59

Link to comment
Share on other sites

citação:

João,

Qual é o erro que está aparecendo?

Ricardo.


id=quote>id=quote>

Não traz a lista de emails selecionados corretamente.

Duplica, quadruplica, etc.

Selecione uns tres emais para levar ao campo PARA:

E teste para ver o que acontece Ricardo.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632 - TIM

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066

Editado por - kapiaba on 08/02/2011 17:59:56

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...