Fórum Enviar E-mail...não funciona..JAMAIS #285716

22/06/2005

0

Estou usando Indy10 e Delphi 2005...

já não sei mais o que fazer...já tentei fazer de tudo...não consigo enviar e-mail´s pelo delphi...todo mundo faz menos eu :oops:

bom ai vai o código q estou fazendo...é um código de testes
  IdMessage1.ContentType := ´text/html´;
  IdMessage1.Subject := ´Título´;
  IdMessage1.Body.Add(´1° Linha´);
  IdMessage1.Body.Add(´2° Linha´);
  IdMessage1.Body.Add(´3° Linha´);
  IdMessage1.From.Address := ´emailremetente@gmail.com´;
  IdMessage1.From.Name := ´Alan´;
  IdMessage1.From.Text := ´texto do from´;
  IdMessage1.Recipients.Clear;
  IdMessage1.Recipients.Add.Address := ´emaildequemrecebe@gmail.com´;

  wErro := ´´;

// Conecto pop por alguns SMTP só conectam depois do POP3
  try
   IdPOP31.Host := ´pop3.bol.com.br´;
   IdPOP31.Port := 110;
   IdPOP31.Username := ´usuario´;
   IdPOP31.Password := ´senha´;
   try
    IdPOP31.Connect;
    wErro := ´Nenhum Erro com POP3´;
   except
    on E:Exception do
      wErro := ´Erro: ´+E.Message;
   end;
  finally
   IdPOP31.Disconnect;
  end;

  try
  IdSMTP1.Host := ´smtp.bol.com.br´;
  IdSMTP1.Port := 25;     // gmail a porta é 465
  IdSMTP1.Username := ´usuario´;
  IdSMTP1.Password := ´senha´;
//  IdSMTP1.AuthType := atDefault;
  try
  IdSMTP1.Connect;
  wErro := wErro + #13+´Nenhum Erro com SMTP´;
  except
    on E:Exception do
      wErro := wErro + 13+´Erro: ´+E.Message;
  end;
  if (IdSMTP1.Connected) then
      IdSMTP1.SendMsg(IdMessage1)
  finally
    IdSMTP1.Disconnect;
  end;
  ShowMessage(wErro);



Se alguem puder me dar alguma ajuda..eu agradeço muuuuuuuito...

Abraços a todos


Alansvieceli

Alansvieceli

Responder

Posts

22/06/2005

Massuda

Estou usando Indy10 e Delphi 2005...
Ainda estou no Indy 9 + Delphi 5.

já não sei mais o que fazer...já tentei fazer de tudo...não consigo enviar e-mail´s pelo delphi...todo mundo faz menos eu :oops:
Quando a gente fala que é preciso conectar primeiro no servidor POP3 e depois no servidor SMTP, na verdade quer dizer que você deve conectar no POP3, conectar no SMTP, enviar o(s) email(s), desconectar do SMTP e finalmente desconectar do POP3, ou seja você deve permanecer conectado no servidor POP3 enquanto acessa o servidor SMTP.


Responder

Gostei + 0

22/06/2005

Alansvieceli

Cara...valeu ai..
fiz o que tu falou..Conectei no POP, ´mandei´ o e-mail, só q não rolou....não enviou denovo...

o estranho é q não da erro...apenas envia mas eu não recebo....


Responder

Gostei + 0

22/06/2005

Massuda

...o estranho é q não da erro...apenas envia mas eu não recebo....
Algumas sugestões...[list:ce26b504ab][*:ce26b504ab]apenas para teste, não envie mensagens HTML, ou seja, deixe o IdMessage1.ContentType como sendo ´text/plain´[*:ce26b504ab]envie a mensagem com cópia (CC) para outra conta de email em outro provedor[*:ce26b504ab]verifique se a conta que está (ou deveria estar) recebendo os emails tem algum tipo de filtro contra spam ativo[*:ce26b504ab]experimente usar outro provedor para envio dos emails[/list:u:ce26b504ab]Note que muitos servidores POP reconhecem emails enviados pelo Indy como sendo spam.


Responder

Gostei + 0

27/06/2005

Alansvieceli

Blz..o e-mail funcionou...
o problema é q não consigo anexar...:(

estou usando Indy10 e Delphi 2005


Responder

Gostei + 0

28/06/2005

Alansvieceli

Se puder ajudar, ai está o código (ou parte dele) q eu estou fazendo..

o problema é q quando chega na hora de enviar..ele para..não da erro, nem nada..só fica congelado..se algume ja anexou arquivos usando o Indy10...e puder me ajudar..eu agradeço...

Var
  wIdMessage: TIdMessage;
  wIdPop3: TIdPOP3;
  wIdSmtp: TIdSMTP;
  wAnexo: TIdAttachment;

begin
.
.
.
     wAnexo := TIdAttachment.Create(wIdMessage.MessageParts);
     wAnexo.ContentType := ´multipart´;
     wAnexo.FileName := TFileName("D:\tmp\teste.txt");
     wIdMessage.DoCreateAttachment(wAnexo.Headers,wAnexo);
.
.
.
    wIdSmtp.Connect;
    wIdSmtp.Send(wIdMessage);
.
.
.



Responder

Gostei + 0

28/06/2005

Massuda

Se puder ajudar, ai está o código (ou parte dele) q eu estou fazendo.. o problema é q quando chega na hora de enviar..ele para..não da erro, nem nada..só fica congelado..
No [b:884163bcae]Indy 9[/b:884163bcae], para anexar arquivos seria mais ou menos assim...
Var 
  IdMessage: TIdMessage; 
...
  TIdAttachment.Create(IdMessage.MessageParts, TFileName(´D:\tmp\teste.txt´));
...
...sem a necessidade de fazer qualquer outra coisa; geralmente você não precisa alterar as propriedades do TIdAttachment criado dessa forma.


Responder

Gostei + 0

29/06/2005

Alansvieceli

Isso não existe no Indy 10..

  TIdAttachment.Create(IdMessage.MessageParts, TFileName(´D:\tmp\teste.txt´));


agora é assim...
  TIdAttachment.Create(IdMessage.MessageParts)


e também tem esse
  TIdAttachmentFile.Create(IdMessage.MessageParts, TFileName(´D:\tmp\teste.txt´));

mesmo esse código acima não ta funcionando...

Esse indy 10 mudou...por isso a dificuldade q eu estou pra mandar esse aquivo em anexo..ele anexa em binario na mensagem..coloca um monte de letras do corpo da menssagem....

mas valeu a força..se souber de mais alguma coisa..por favor..


Responder

Gostei + 0

29/06/2005

Massuda

Isso não existe no Indy 10...
Eu não uso essa versão porque considero ela algo meio ´beta´ ainda... mas sei que tem casos que não tem jeito, precisa ser essa versão.

Já experimentou baixar e dar uma olhada no demo que tem na [url=http://www.indyproject.org/Sockets/Demos/index.iwp]página do Indy[/url] (demo do IdPOP3/IdSMTP/IdMessage)?


Responder

Gostei + 0

29/06/2005

Alansvieceli

eu só usos ela pq veio junto com o Delphi 2005 :(


Responder

Gostei + 0

29/06/2005

Massuda

Talvez valesse a pena instalar a versão mais recente disponível [url=http://www.indyproject.org/Sockets/Download/Files/Indy10.iwp]nesta página[/url] do Indy? Não faço idéia de como trocar sua versão, mas como eles estão trabalhando no Indy 10, pode ser que algum bug do Indy que eventualmente esteja te atrapalhando tenha sido resolvido.


Responder

Gostei + 0

13/07/2005

Ricardopinheiro

[quote:363a5dd375=´alansvieceli´]...o estranho é q não da erro...apenas envia mas eu não recebo....
Algumas sugestões...[list:363a5dd375][*:363a5dd375]apenas para teste, não envie mensagens HTML, ou seja, deixe o IdMessage1.ContentType como sendo ´text/plain´[*:363a5dd375]envie a mensagem com cópia (CC) para outra conta de email em outro provedor[*:363a5dd375]verifique se a conta que está (ou deveria estar) recebendo os emails tem algum tipo de filtro contra spam ativo[*:363a5dd375]experimente usar outro provedor para envio dos emails[/list:u:363a5dd375]Note que muitos servidores POP reconhecem emails enviados pelo Indy como sendo spam.[/quote:363a5dd375] Legal, mas como faço para indicar o CC? e acho que o problema desta comunicação era resolvido com o ´text/plain´.


Responder

Gostei + 0

13/07/2005

Massuda

...como faço para indicar o CC?
Faça algo assim:
IdMessage1.CCList.EMailAddresses := ´fulano@example.com;cicrano@example.com;beltrano@example.com´;



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar