Einzelnen Beitrag anzeigen

Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#11

Re: Indy IdDeconderMIME.Decodestring konvertiert falsch

  Alt 13. Mai 2009, 17:01
Hi,

@ulrich.b: In der tat, der Code wirkt damit schon fast antik

Ich habe - zu meiner Schande - vor lauter Arbeit mir den Code nicht angesehen.

Das Problem, welches ich festgestellt habe, hat mit dem Code der hier gepostet wurde nichts zu tun. Es geht dabei ausschließlich um D2009 und UTF8Strings.

Jetzt muß ich sogar etwas zurückrudern: Es läuft prinzipiell auch mit den Delphi eigenen Base64 Routinen genau so. Die D2009 Routinen aus EncdDecd liefern das, was ich sehen wollte nur, wenn manuell ein Overload für UTF8Strings definiert wird und die StringStream Klasse auf dem TEncoding.UTF8String steht.

Ich hatte bei meinem Test das UTF8 Beispiel von http://de.wikipedia.org/wiki/Base64 verwendet. Dies liefert für Indy und für Delphis EncdDecd Unit das gleiche, abweichende Resultat. Da ich auf das selbe Resultat komme, wenn ich manuell einen UTF8String erzwinge, stimmt also alles.

Ich kam wegen meiner eigenen Base64 Unit hier in der Firma davon ab, weil ich UTF8Strings als Mime64 Eingabedaten gesondert behandele. Aber der Unittest stimmt und hat recht!

@Markus: Probiere bitte den Code von Ulrich.

Ich gehe jetzt nicht mehr von einem Bug aus.

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat