Moin,moin.
Ich habe ein großes Problem. Benutze die
Indy IDPOP3-Komponente um emails abzurufen. Dazu benutze ich folgenden Code, der soweit auch einwandfrei funktioniert:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
msgcount, i : longint;
begin
pop3.Connect();
msgcount :=
pop3.CheckMessages;
if msgcount <> 0
then
for i := 1
to msgcount
do
begin
pop3.Retrieve(i,mail);
mail.SaveToFile(inttostr(i)+'
.mail');
mail.Clear;
end;
pop3.Disconnect;
showmessage(inttostr(msgcount)+'
Mails received!');
end;
Anschließend schicke ich die Mails mit der IDSMTP-Komponente weiter, auch das funktioniert:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
sr : TSearchRec;
begin
if FindFirst(ExtractFileDir(application.ExeName)+'
\*.mail',0,sr) = 0
then
repeat
mail.LoadFromFile(sr.
Name);
mail.Recipients.Clear;
mail.Recipients.Add.Address := '
xxx@xxx.de';
smtp.Connect();
smtp.Send(mail);
smtp.Disconnect;
mail.Clear;
until findnext(sr) <> 0;
showmessage('
email send!');
end;
Das einzige was leider nicht funktioniert ist, wenn ich eine Mail mit Anhang empfange, sprich eine MIME-Multipart-Message.
Das Attachment wird zuverlässig weiter geleitet, nur statt dem normalen Text in der ursprünglichen E-Mail taucht "This is a multi-part message in MIME format" beim Empfänger als Text auf. Mein Mailserver liefert die Mail korekt aus, das habe ich schon per Telnet getestet, also muss etwas beim speichern der Email schief gehen! Nur was???
Bin für jeden Tip/Hinweis dankbar!!!
Lg Henrik