![]() |
Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp Skin
Hallo
Programmiere gerade einen Player und würde dem gerne auch Skin Fähigkeit geben. Ähnlich wie bei Winamp. Dort gibts ja auch ein Skin File den man einfach nach .zip umbenennen kann. Alles was ich aber bisher fand beruht darauf das ich die Daten erst entpacken muss um damit zu arbeiten. Ich würde sie aber gerne direkt aus dem Archive verarbeiten können. Kann mir auch nicht vorstellen das Winamp erst den Skin File entpackt und dann die Forms skinnt. Hat hier jemand vllt. eine Idee womit dies möglich ist? Es muß nicht unbedingt zip sein aber es sollte möglich sein ohne groß etwas zu installieren auch selber skin Files erstellen zu können. Gruß Daniel |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Hallo,
wie wäre es mit der Benutzung von ![]()
Delphi-Quellcode:
ZipMaster.ExtractFileToStream('dateiname');
|
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Hab sie mir mal angesehen, macht so keinen schlechten Eindruck. Nur müsste ich auch immer die DLL mitgeben so wie das aussieht. :/
Gibt es sonst noch Alternativen? |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
|
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Darauf bin ich auch bereits gekommen nur sind da nicht gerade viele Infos was den Zugriff direkt auf Dateien angeht.
Das ist es eben was ich noch weniger möchte, die Daten erst zu extrahieren. |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Fast alle Komponenten bieten doch auch immer einen DeCompressStream an. Ein ZIPDirectory ist auch sehr gut dokumentiert, falls die Verwaltung vom Programm übernommen werden muss.
Den kannst Du ja dann verwenden wie Du es brauchst, muss ja nicht ein TFileStream zur Ausgabe sein. Kann ja imho auch direkt ein LoadStream eines Objectes sein. |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Zitat:
Schau mal in deinen Tmp Ordner. gruss Emil |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Ich habe hier gerade mal die Komponente von den Jedis TJvZLibMultiple.
Diese bietet auch dein DeCompressStream an.
Delphi-Quellcode:
Wie kann ich aber damit auf die Datei zugreifen im Archive. Es wird nen Stream erwartet
procedure DecompressStream(Stream: TStream;
Directory: string; Overwrite: Boolean; const RelativePaths: Boolean); und in ein Verzeichnis entpackt. |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Das Winamp dies auch so macht, wußte ich nicht.
Was ist wenn die Platte nicht ausreicht um den Skin zu extrahieren??? Nehmen wir gerne mal ein anderes Beispiel. Ein Game, dort sind die Texturen auch meist in einem "Archive" gepackt. Da kann es gut sein das man dafür wieder nen bestimmtes Tool braucht um auf die Daten zuzugreifen aber diese entpacken es definitiv nicht zuerst. |
Re: Zip Datei direkt auslesen ohne zu entpacken. Wie Winamp
Zitat:
Ein System mit einer Plattenauslastung >80% wird echt langsam ... cu Oliver |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz