Hier mein erster Versuch mit Hilfe von Base64Encode aus der Code-Library:
Delphi-Quellcode:
function Base64EncodeFile(AFileName: String; var ABase64Str: String): Boolean;
var
ms: TMemoryStream;
InSize, OutSize: Cardinal;
PIn, POut: Pointer;
begin
result:= False;
ABase64Str:= '';
if FileExists(AFileName) then
begin
with TMemoryStream.Create() do
try
LoadFromFile(AFileName);
// get size of source
InSize := Size;
Position:= 0;
// calculate size for destination
OutSize := CalcEncodedSize(InSize);
SetLength(ABase64Str, OutSize);
// encode !
PIn := Memory;
POut:= @ABase64Str[1];
Base64Encode(PIn, InSize, POut);
result:= True;
finally
Free;
end;
end;
end;
Das mit dem dem "ABase64Str" für die Rückgabe haut aber irgendwie nicht hin.
Wäre nett, wenn das mal einer ausprobieren könnte und den Fehler findet.
Gruß
Matthias