Porque não retorna os e-mails?
Boa tarde amigos Delphianos,
Peguei uma rotina aqui no forum para a leitura de e-mails do servidor, mas qdo eu vou ver as mensagens salvas o arquivo está em branco, uso componentes indy e o Delphi 5, o código que eu uso é o seguinte:
[b:6d8a39e3c3]procedure [/b:6d8a39e3c3]TForm1.FormShow(Sender: TObject);
[b:6d8a39e3c3]var[/b:6d8a39e3c3]
i : Word;
QtdMsgs : Word;
Msg : TStringList;
[b:6d8a39e3c3]begin[/b:6d8a39e3c3]
Msg := TStringList.Create;
[b:6d8a39e3c3]if not[/b:6d8a39e3c3](ConectaServPOP(POP3, edtEMail.Text, edtSenha.Text, edtServerReceber.Text)) [b:6d8a39e3c3]then Begin[/b:6d8a39e3c3]
ShowMessage(´Não foi possível conectar ao servidor POP´);
Exit
[b:6d8a39e3c3]End;[/b:6d8a39e3c3]
Application.ProcessMessages;
QtdMsgs := POP3.CheckMessages;
Msg.Clear;
[b:6d8a39e3c3]for[/b:6d8a39e3c3] i := 0 to QtdMsgs [b:6d8a39e3c3]do Begin[/b:6d8a39e3c3]
POP3.Retrieve(i, Mensagem);
Msg.AddStrings(Mensagem.Body);
End; // for i := 0 to QtdMsgs do
Msg.SaveToFile(´c:\msg ´ + IntToStr(i) + ´.txt´);
[b:6d8a39e3c3]end[/b:6d8a39e3c3];
Desde já, agradeço.
Robert
Peguei uma rotina aqui no forum para a leitura de e-mails do servidor, mas qdo eu vou ver as mensagens salvas o arquivo está em branco, uso componentes indy e o Delphi 5, o código que eu uso é o seguinte:
[b:6d8a39e3c3]procedure [/b:6d8a39e3c3]TForm1.FormShow(Sender: TObject);
[b:6d8a39e3c3]var[/b:6d8a39e3c3]
i : Word;
QtdMsgs : Word;
Msg : TStringList;
[b:6d8a39e3c3]begin[/b:6d8a39e3c3]
Msg := TStringList.Create;
[b:6d8a39e3c3]if not[/b:6d8a39e3c3](ConectaServPOP(POP3, edtEMail.Text, edtSenha.Text, edtServerReceber.Text)) [b:6d8a39e3c3]then Begin[/b:6d8a39e3c3]
ShowMessage(´Não foi possível conectar ao servidor POP´);
Exit
[b:6d8a39e3c3]End;[/b:6d8a39e3c3]
Application.ProcessMessages;
QtdMsgs := POP3.CheckMessages;
Msg.Clear;
[b:6d8a39e3c3]for[/b:6d8a39e3c3] i := 0 to QtdMsgs [b:6d8a39e3c3]do Begin[/b:6d8a39e3c3]
POP3.Retrieve(i, Mensagem);
Msg.AddStrings(Mensagem.Body);
End; // for i := 0 to QtdMsgs do
Msg.SaveToFile(´c:\msg ´ + IntToStr(i) + ´.txt´);
[b:6d8a39e3c3]end[/b:6d8a39e3c3];
Desde já, agradeço.
Robert
Rgaffo
Curtidas 0
Respostas
Massuda
12/12/2005
Aparentemente deveria funcionar. Um detalhe que pode estar pegando é que nem todas as mensagens pode ter seu conteúdo pego através da propriedade .Body. Mensagens em formato HTML, por exemplo, costumam ser geradas na forma de diversos anexos (os programas de email geralmente sabem tratar esses anexos sem problemas).
GOSTEI 0
Rgaffo
12/12/2005
Pensando nisso enviei um e-mail somente com textos.
GOSTEI 0
Massuda
12/12/2005
Pensando nisso enviei um e-mail somente com textos.
Mas a mensagem foi enviada em formato texto? Se estiver usando, por exemplo, Outlook Express, você tem que ir em Ferramentas|Opções|Envio e mudar o formato para envio de mensagens para texto sem formatação (o default é HTML).GOSTEI 0
Rgaffo
12/12/2005
sim, eu usei outro e-mai que eu tenho para enviar em texto, não usei o outlook enviei pelo webmail msm.
GOSTEI 0
Rgaffo
12/12/2005
Pessoal, caso vcs tenham outro método para fazer isso, é muito bem vindo
GOSTEI 0