AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi E-Mail Attachment (Base64 En-/Dekodieren)
Thema durchsuchen
Ansicht
Themen-Optionen

E-Mail Attachment (Base64 En-/Dekodieren)

Ein Thema von DelphiPeter · begonnen am 23. Dez 2007 · letzter Beitrag vom 23. Dez 2007
Antwort Antwort
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#1

E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 15:05
Hallo! Ich lese Email Nachrichten aus, und möchte die Anhänge abspeichern. Da steht nun Base64 Encoding. Wie funktioniert denn das, die Daten habe ich ja vorerst nur als String, wie mache ich das mit dem Base64 ? Kann mir das jemand mal erklären bitte?

Gibts theoretisch auch noch eine andere Codierung für Anhänge in Emails?

Danke!!!

DelphiPeter
Peter Majewski
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 15:06
Moin Peter,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Wie liest Du denn die Mails aus?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#3

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 15:17
Hi Christian,

danke für das herzliche Willkommen!

Die Emails liegen mir als *.dat Dateien vor. Diese lese ich in einen String und bearbeite diesen wiederum mit pos, length und copy aus.

Als Beispiel für ein Attachment bekomme ich diesen Base64 Code

Content-ID: <image6>
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="310x226.jpg"

/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAARgAA/+IMWElDQ19QUk9GSUxF
AAEBAAAMSExpbm8CEAAAbW50clJHQiBYWVogB84AAgAJAAYAMQ AAYWNzcE1TRlQAAAAASUVD
...
qy/LEmBNE1dhq4/ztBd140XenGY/eHknvYH7fMHW3sA/Jih0F4R/qn+CFW9wKTmwNZW/bEPq
FgId8EfYNCfkVGrXA9+oGL+ImcrL98eJvMd3iO9NzlZ3V3WA3R 27Sz2gKvh5o/XX1r4vAM6K
9M+s9a+LwDOitaz69dHbLLkXVYq+79B0E0ns95u+z2+o/QYx1NU3mr+9xj1bv8v/2Q==


Die Frage ist nun, wie ich daraus jetzt eine Datei bekomme?

[edit=Phoenix]Code gekürzt. Wenns sein muss, bitte Anhängen. Mfg, Phoenix[/edit]
Peter Majewski
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 15:33
Moin Peter,

vielleicht hilft Dir ja dieser Artikel schon weiter.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#5

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 15:57
da oben hätten ein paar auslassungspünktchen ...
und/oder die Zitattägs nicht schaden können.

Nja, du mußt nur den Base64/MIME-String extrahieren und in Binärdaten umwandeln lassen.
also "/9j/4AAQS ... 3mr+9xj1bv8v/2Q==" (und eventuell vorher die Zeilenwechsel entfernen, je nach Dekodierungsverfahren)

dafür gibt's auch fertige Funktionen/Klassen

z.B. in den INDYs (sind oftmals in Delphi schon enthalten) > Unit IdCoderMIME > TIdDecoderMIME und TIdEncoderMIME
und das JCL kent dafür auch Einiges.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
OG Karotte
(Gast)

n/a Beiträge
 
#6

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 16:17
Oder Du guckst mal hier bzw. hier (EncodeBase64 bzw. DecodeBase64).
  Mit Zitat antworten Zitat
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#7

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 18:41
Wie benutze ich denn diese Indy Komponenten?
Peter Majewski
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#8

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 18:53
Unit einbinden, Klasse initialisieren, verwenden und freigeben
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#9

Re: E-Mail Attachment (Base64 En-/Dekodieren)

  Alt 23. Dez 2007, 18:55
Hallo DelphiPeter,

in der CodeLib gibt es auch Base64-Funktionen: Link

MfG,
Bug
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  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:21 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