AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi POP3 Mail mit Anhang
Thema durchsuchen
Ansicht
Themen-Optionen

POP3 Mail mit Anhang

Ein Thema von Cosamia · begonnen am 14. Apr 2008 · letzter Beitrag vom 14. Apr 2008
Antwort Antwort
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#1

POP3 Mail mit Anhang

  Alt 14. Apr 2008, 09:38
Tag zusammen,

mal wieder eine kleine Frage an euch.
Ich versuche gerade mein POP3 Client fertig zu stellen. Funzt auch alles bis auf die Anhänge.

Diese entalten immer den kompletten Mailkopzeichen.

Microsoft Mail Internet Headers Version 3.0
Thread-Topic: APEX-Bestellung von Kunde (Joe Valachi ) am (11.04.2008 19:36:49)
X-PMWin-Version: 1.7.1, Antispam-Engine: 2.8.0, Antivirus-Engine: 1.72.0


Was mache ich falsch?

Ich speichere den den Anhang wie folgt:

Idmessage.SaveToFile(xmlfile);
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 09:54
welche Indyversion verwendest du denn?
Und wo genau ist jetzt dein Problem? Wenn du die Mail empfängst kannst du logischer Weise nicht bestimmen was der Absender in die Mail packt. Und wenn dieser eben diese Header mit reinpackt sind sie nunmal drin.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#3

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 10:07
Indy 10.

Der Anhang besteht aber eigentlich nur aus einer XML Datei.

Und genau diese will ich abspeichern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 10:30
Tritt das Problem nur bei XML-Dateien auf? Wir haben die Erfahrung das manche Clients ab und zu denke XML-Anhänge verändern zu müssen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#5

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 10:33
Nein, es bezieht sich nicht nur auf XML Dateien.

Ich glaube der Inhalt von Idmessage ist falsch bzw. die komplette Mail.

Wie kann ich den nur den Anhang ansprechen und nicht die ganze Mail?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 10:43
Hallo,

Zitat von Cosamia:
... Was mache ich falsch? Ich speichere den den Anhang wie folgt:
Idmessage.SaveToFile(xmlfile);
warum speichesrt du die komplette Message mit Headers, Body und Attachment, wenn du nur einen Anhang speichern möchtest? Aber auch wenn du nur ein IdAttachment (Message.MessageParts[1] as TIdAttachment o.ä.) speicherst, könnten spezielle Header enthalten sein. Einfach bis zur ersten Leerzeile wegnehmen.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#7

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 11:38
Zitat von Cosamia:
Ich speichere den den Anhang wie folgt:

Idmessage.SaveToFile(xmlfile);
Nein, damit speicherst du nicht den Anhang, sondern die ganze Mail als solches im .msg Format. Outlook Express und eigentlich alle anderen Mail Clients (ausser Outlook) können dieses format wieder einlesen...

Die Attachments liegen, wie Marabu beschrieben hat, in den Messageparts. Die Messageparts müssen aber nicht zwangsläufig Attachments sein, deshalb ist eine vorherige Prüfung wichtig:
Delphi-Quellcode:
if (idMessage.MessageParts[0] is TIdAttachment) then begin
   attachment := idMessage.MessageParts[0] as TIdAttachment ;
   attachment.SaveToFile("") ; // oder so ähnlich
end ;
Eventuell musst du noch eine Schleife rumbauen, um alles MessageParts durchzugehen.
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#8

Re: POP3 Mail mit Anhang

  Alt 14. Apr 2008, 11:42
Zitat von Jelly:
Zitat von Cosamia:
Ich speichere den den Anhang wie folgt:

Idmessage.SaveToFile(xmlfile);
Nein, damit speicherst du nicht den Anhang, sondern die ganze Mail als solches im .msg Format. Outlook Express und eigentlich alle anderen Mail Clients (ausser Outlook) können dieses format wieder einlesen...

Die Attachments liegen, wie Marabu beschrieben hat, in den Messageparts. Die Messageparts müssen aber nicht zwangsläufig Attachments sein, deshalb ist eine vorherige Prüfung wichtig:
Delphi-Quellcode:
if (idMessage.MessageParts[0] is TIdAttachment) then begin
   attachment := idMessage.MessageParts[0] as TIdAttachment ;
   attachment.SaveToFile("") ; // oder so ähnlich
end ;
Eventuell musst du noch eine Schleife rumbauen, um alles MessageParts durchzugehen.
Jetzt habe auch ich es verstanden.

Danke an alle. Manchmal kann das Leben so schwer sein.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz