das einfachste ist du schreibst alle deine Skindateien hintereinander in die Datei und speicherst eben die Positionen in eine die Ini (oder sogar mit in diese Datei)
Folgendes ist ungetestet sollte aber funktionieren.
Delphi-Quellcode:
var
lFile : TMemoryStream;
lBigFile : TFileStream;
lCount : Integer;
begin
lFile := TMemoryStream.Create();
lBigFile := TFileStream.Ceate(Filename, fmCreate);
for lCount := 0 to DateiListe.Count - 1 do
begin
lFile.LoadFromFile(DateiListe.Strings[lCount];
Ini.WriteString('Files', 'File' + IntToStr(lCount), DateiListe.Strings[lCount]);
Ini.WriteInteger('Files', 'FilePos' + IntToStr(lCount), lBigFile.Position);
Ini.WriteInteger('Files', 'FileSize' + IntToStr(lCount), lFile.Size);
lFile.Position := 0;
lBigFile.CopyFrom(lFile, lFile.Size);
end;
lBigFile.Free;
lFile.Free;
end;