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