Autor Beitrag
LittleBen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 258
Erhaltene Danke: 4

Win 7, Mac OS
Delphi 7
BeitragVerfasst: Di 26.08.14 14:51 
Hallo zusammen,
mein neustes Problem sieht so aus, dass ich ein Stream in eine Zeichenkette packen muss.
Genauer gesagt muss ich den Stream über ein Indy Socket senden,darf aber nicht die methode Write(AStream: TMemoryStream)benutzen. Das ist vom Admin so vorgegeben und lässt sich auch nicht ändern.
Jetzt hatte ich die Idee, den Stream einfach Base64 zu kodieren und dann als Zeichenkette wegzuschicken.
Da ich Delphi 7 benutze, kann ich folgende Funktion leider nicht benutzen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
function EncodeFile(const FileName: string): AnsiString;
var
  stream: TMemoryStream;
begin
  stream := TMemoryStream.Create;
  try
    stream.LoadFromFile(Filename);
    result := EncodeBase64(stream.Memory, stream.Size);
  finally
    stream.Free;
  end;
end;

Habt ihr Ideen, wie man das hier in D7 umsetzen kann?

Vielen Dank und Grüße
Littleben
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10181
Erhaltene Danke: 1254

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Di 26.08.14 22:23 
Moin!

Ich sehe keinen "Vorteil" (genauer: nicht mal einen Unterschied) darin, einen Datenblock raw oder base64-codiert zu senden - ausser dass es bei letzterem (unnütz) mehr Daten werden... :nixweiss:

Und warum sollte D7 kein base64 können? :gruebel: (also meins kann´s, wobei ich mir zugegebenermaßen nicht sicher bin, ob das von-hause-aus geht :?) Zumindest bei den Indies gibt´s definitiv einen Encoder, sollte Delphi das nicht an Bord haben oder keine simple Funktion dafür googlebar sein.

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Di 26.08.14 22:34 
Hallo,
siehe stackoverflow.com/qu...e-base64-in-delphi-6

Beste Grüße
Mathematiker