"Andreas Kohlbach" schrieb am 23.11.2012 um 00:47:13:
> Bei OP sieht es so aus, als ob das für den ersten Part richtig war. Der
> zweite Part aber wieder die ID des ersten Parts hat.
Was verstehst du unter "ID"?
Der im Header der Mail deklarierte Boundary-String ist jedenfalls
"/04w6evG8XlLl3ft". Ein Part beginnt dort, wo dieser String mit
vorangestelltem '--' (2 Minuszeichen) im Mail-Body steht. Taucht der String
mit den beiden Minuszeichen mehrfach auf, unterteilt er die Mail in mehrere
Parts, d. h. immer dort, wo der String steht, endet der vorangegangene Part
und es beginnt ein neuer Part. Genau das ist bei der vom OP beschriebenen Mail
der Fall. Am Ende des letzten Parts steht wieder der Boundary-String, diesmal
aber mit vorangestelltem *und* hinten drangehängtem '--'. Diese Zeile hat der
OP nicht mitzitiert, aber ich gehe davon aus, dass sie vorhanden ist. Sie
steht vermutlich am Ende des Base64-codierten PDF-Anhangs.
Man kann also eine Mail mit mehreren Parts (bzw. einen Part mit mehreren
Unter-Parts) problemlos mit lauter gleichen Strings in Parts bzw. Unter-Parts
unterteilen. Es geht auch gar nicht anders, denn im Mail-Header (bzw. im
Header des Parts) lässt sich jeweils nur ein einziger Boundary-String
definieren.
Im vorliegenden Fall entsprechen die Header exakt den Vorgaben. Dass Outlook
den codierten PDF-Anhang als Text darstellt, ist ein Fehler von Outlook.
Leider habe ich keine Ahnung, wie man Outlook diesen Fehler austreiben kann.
Gruß
Michael