Autor |
Beitrag |
OliverN_26
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Mo 22.08.11 19:53
Hey Leute
Ich krieg gleich nen Nervenzusammenbruch.
Ich muß auf den Betreff einer Mail reagieren. Diese kommt allerdings kodiert. Wie mittlerweile rausbekommen habe wohl "Base64" ?
Ich versuch nun schon den ganzen Tag da nen Decodierer zu finden und einzubauane aber es klappt einfach nicht
Habt ihr nen Tip?
So sieht die Ausgabe aus:
Delphi-Quelltext 1:
| =?UTF-8?B?RXNwZWNpYWxpemF0ZSBlbiBhdXhpbGlhciBkZSBlbmZlcm1lcsOtYQ==?= |
Ich bin für jede Hilfe dankbar .. dreh echt glech durch 
|
|
Tankard
      

Beiträge: 217
Erhaltene Danke: 96
|
Verfasst: Mo 22.08.11 20:00
da steht :
Especializate en auxiliar de enfermer
schau mal hier: www.delphifaq.net/ho...and-decode-a-string/
|
|
OliverN_26 
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Mo 22.08.11 20:08
Und wie krieg ich das hin das er mir das decodiert? Wie siehst du das?
|
|
Tankard
      

Beiträge: 217
Erhaltene Danke: 96
|
Verfasst: Mo 22.08.11 20:10
du brauchst doch nur ne base64 decodierung einbauen.
ich versteh das problem nicht so ganz, wo es bei dir haengt.
das solltest du hier vorher abschneiden.
=?UTF-8?B?
dann normale base64 decode function aufrufen und du hast den text
|
|
OliverN_26 
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Mo 22.08.11 20:13
Den Link den du mir geschickt hast habe ich schon versucht.
Da steht jetzt nur noch total wirres Zeug drin. Auch bei den Betreffzeilen, die vorher normal kamen. Waren ja nur ein paar codiert.
--- Moderiert von Narses: Beiträge zusammengefasst---
ah ok .. das mit dem Abschneiden ist neu ..
das heisst also NUR dann decodieren wenn der String mit "=?UTF-8?B?" beginnt und wenn er so beginnt den Teil vorher vom String lösen?
--- Moderiert von Narses: Beiträge zusammengefasst---
aaaaarg
Klappt nicht
Kannst du mir ein Bespiel geben wie du den Decodierer aufrufst?
Und welchen vor allem !
Vielen Dank
--- Moderiert von Narses: Beiträge zusammengefasst---
Kann es sein das ich hinten auch noch mal was abschneiden muß?
Ich hab den vorderen Teil ausgesondert und nun kann man zumindest die ersten buchstaben klar lesen und erkenne worum es sich handelt. Aber der Rest is trotzdem noch durcheinander.
|
|
Tankard
      

Beiträge: 217
Erhaltene Danke: 96
|
Verfasst: Mo 22.08.11 20:42
kuckst du im anhang.
war das beispiel komplett was du gepostet hast, oder nur ne ausschnitt?
komplett, dann musst du auch ?= am ende abschneiden.
länge des strings kann man berechnen. schau mal diesen artikel an:
de.wikipedia.org/wiki/Base64
Einloggen, um Attachments anzusehen!
Zuletzt bearbeitet von Tankard am Mo 22.08.11 20:47, insgesamt 3-mal bearbeitet
|
|
OliverN_26 
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Mo 22.08.11 20:45
Danke
Ich versuchs und melde mich.
Das was ich geschickt habe war ein kompletter Auszug ...
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 22.08.11 20:55
Bitte das RFC zum Thema lesen.
Auf dem Menü stehen: RFC 821, RFC 2045, RFC 2046, RFC 2047, RFC 4288, RFC 4289 and RFC 2049.
Es gibt dann bzgl. der Bedeutung noch paar andere, aber mindestens die sollte man kennen. In einem Header-Feld können übrigens auch mehrere Encodings und Charsets auftauchen:
Quelltext 1:
| Subject: Hallo=20=?UTF-8?B?V2Vs?=t=21 |
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
OliverN_26 
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Mo 22.08.11 21:25
Jetz versteh ich noch weniger als vorher
Kann ja sein das ich zu blöd bin aber ich kriegs einfach nich hin. Da steht nur Müll drin.
Delphi-Quelltext 1: 2:
| if copy(IdMessage1.Subject,1,10) = '=?UTF-8?B?' then showmessage(Base64Decode(copy(IdMessage1.Subject,11,Length(IdMessage1.Subject)-12))); |
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 22.08.11 21:30
Wie? Schon fertig mit der Abend-Lektüre?
Mit = wird eine Escape-Sequenz gestartet. Der erste Teil hinter dem ? gibt den Zeichensatz (hier UTF-  an, der zweite Teil das Encoding (hier B = Base 64, kann aber auch Q für Printed Quotable sein) und der dritte Teil bis zum nächsten ? gibt den auf diese Art kodierten Inhalt an. Zu guter letzt schließt das = die Sequenz ab.
Bei meinem Beispiel sind nun Printed-Quotable und MIME-Encoding gemischt. Wie das korrekt zu dekodieren ist, findest du in den besagten Dokumenten.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
OliverN_26 
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Mo 22.08.11 21:33
Ich hab echt nix gegen neue Problemstellungen. Ich will doch jetz nich ewige Dokmente durchwälzen, für ne doofe Decoierung wo es doch angeblich Decodierer im Netz gibt? Ich versteh nich warum es bei dem einen geht und bei mir nur Müll raus kommt. Was ich heut schon an Nerven an dieser Kacke gelassen habe glaubt mir eh niemand 
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 22.08.11 21:37
Und ich möchte hier auch gar nicht bösartig sein, wenn ich die (zugegeben etwas länglichen) Dokumente hier verlinke, aber Du wirst Dir einiges an Ärger und Bugs ersparen, wenn Du Dir die Spezifikation einfach einmal durchliest.
Für PHP gibt es hier genug (auch funktionierende und konforme) Implementationen, aber für Delphi wüsste ich grad keine. Und warum die Indys das nicht dekodieren ist hier auch grad fraglich.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
OliverN_26 
      
Beiträge: 252
Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
|
Verfasst: Do 25.08.11 09:10
Ich hab echt noch mal einiges probiert aber hab es einfach nicht hinbekommen  Der Ausgabetext wurde einfach immer nur noch kryptischer. Ich hab für mich jetzt eine andere Lösung gefunden die mir das gewünschte Ergebnis bringt. Vielleicht werde ich in naher Zukunft das Thema mit der Codierung noch mal angehen und es dann noch mal versuchen. Danke trotzdem für die Tips ...
lg
|
|
muchas
Hält's aus hier
Beiträge: 15
Erhaltene Danke: 2
|
Verfasst: Do 25.08.11 11:48
Und wie hast es jetzt gelöst?
|
|
Pepp3r
      
Beiträge: 82
|
Verfasst: Do 25.08.11 17:49
|
|