Ich nutzte folgenden Code, um eine Resource in das Filesystem zu schreiben.
Da alles im Hintergrund laufen soll, habe ich das in einen Thread gepackt.
Leider bricht mir dann mein Tablet mit Meldung "Anwendung wurde beendet" nach einiger Zeit ab.
Ich habe dann testweise TPath.GetTempPath gegen den Pfad als String getauscht und nun scheint es zu laufen.
Ist denn TPath eine visuelle Komponente, oder wie kann man sich das Problem erklären?
Delphi-Quellcode:
//kopiert einen Song als Resource in eine Datei
Function CopyStream2File(ResourceID:
string;
var fName:
String): boolean;
var
ResStream: TResourceStream;
begin
Result := False;
ResStream := TResourceStream.Create(HInstance, ResourceID, RT_RCDATA);
try
//MP3 File aus Resource laden und in Filesystem ablegen
fName := TPath.Combine(TPath.GetTempPath, '
tmp.mp3');
// fName := TPath.Combine('/data/data/com.embarcadero.Meinprogram/files/', 'tmp.mp3');
ResStream.Position := 0;
ResStream.SaveToFile(fName);
Result := True;
finally
ResStream.Free;
end;
end;