IDPOP3Server

09/12/2008

0

Pessoal, estou desenvolvendo uma pequena aplicação, com base no demo do site da Indy (demo POP3Server) para usar na minha rede local.

Todas as estações da empresa usam outlook express como leitor de e-mails.

Com esse demo rodando, se colocar na configuração da conta do outlook o ip da maquina onde a demo está rodando, ele devolve um e-mail, como se fosse um e-mail esperando para ser baixado do provedor.

O código que faz isso é este:

ASender.Thread.Connection.WriteLn(´+OK 40 octets´);
ASender.Thread.Connection.WriteLn(´From: demo@projectindy.org´);
ASender.Thread.Connection.WriteLn(´To: you@yourdomain.com ´);
ASender.Thread.Connection.WriteLn(´Subject: Hello ´);
ASender.Thread.Connection.WriteLn(´´);
ASender.Thread.Connection.WriteLn(´This is a email body´);
ASender.Thread.Connection.WriteLn(´.´);


Minha dúvida é como enviar um arquivo que veio anexado com o e-mail baixado, para a estação que solicitou?

Já tentei o seguinte:

ASender.Thread.Connection.WriteLn(´Content-Type: application/octet-stream; ´+
            ´name="arquivo.jpg"´);

ASender.Thread.Connection.WriteLn(´Content-Transfer-Encoding:base64´);
ASender.Thread.Connection.WriteLn(´Content-Disposition: Attachment;     ´filename="arquivo.jpg"´);

AStream := TFileStream.Create(´C:\arquivo.jpg´, fmOpenRead);

//AStream.Seek(0, soFromBeginning);
AStream.Position := 0;

ASender.Thread.Connection.WriteInteger(AStream.Size);
ASender.Thread.Connection.WriteStream(AStream);


Fazendo desta forma até vai um anexo qdo é solicitado o recebimento no outlook, mas vai zerado (0 bytes).

Alguém sabe o que estou fazendo de errado?

Valeu pessoal!


Tchelllo

Tchelllo

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar