Fragen zu PROFAN-Helfern und Tools

| Suchen
| Zurück zur Übersicht

Autor | Thema: PCompressor+Pack.dll (Free)
Mischa Brandt
| Datum:02.08.02 12:33 (mischabrandt@gmx.de) |
So wie es scheint ist Roland in Urlaub. Zumindest warte ich schon zwei Tage darauf, daß meine 'News' mal geschaltet werden. :-( Und damit diese Bezeichnung für mein Tool Berechtigung behält, poste ich hier einfach nochmal: PCompressor v1.0 (Freeware) --------------------------- -Packt/Entpackt Dateien (inkl. Verzeichnisstruktur) zu Pack-Archiven. Diese sind Dateiendungs unabhängig. -Erstellt aus Pack-Archiven 'Selbstentpacker' mit eigener Dialogelement-Beschriftung, optionalem Bmp-Logo und 256 Farben Icon. Der Header hat eine Größe ab 37 KB (ohne Bitmap) Durch eine Kombination mit 'Standalone' ist es auch möglich eine Manifest-Datei für XP mit einzulinken Diese Vorgehensweise reduziert sogar nochmals die Datei-Größe. -Erstellt aus Pack-Archiven 'Standalone'-Dateien Einfach das gesamte Programm-Verzeichnis packen, 'Standalone' mit Prg-Name.exe als Startdatei und eigenem 256 Farben Icon erstellen. Funktioniert auch mit kompletten Html-Ordnern (Startdatei wäre vermutl. 'index.html') etc. Der Header ist nur 16 KB groß! -Programmiert in Profan 7.0 (und ein paar APIs ;-) und der 'Pack.dll' Pack.dll v0.9 (Freeware) ------------------------ (muß für Freischalt-Code KOSTENLOS registriert werden) -Einfache Syntax Zum Packen sind nur 3 Funktionen nötig, zum Entpacken lediglich eine. Mit jeweils nur einer Funktion erstellt die Dll einen 'Selbstentpacker', oder eine 'Standalone'-Datei. (Gerade letzteres ist sicherlich für eigene Programme sehr interessant: z.B. Entwicklung eines Präsentations-Programms. So ist es möglich einen Anwender der Software mit einer fertigen Standalone- Datei (mit allen Bildern,Sounds,..) zu bedienen, etc.) Der Packprozess läuft im eigenen Thread, das Haupt- programm kann parallel also anderes tun. Kontrolle ist aber jederzeit durch die 'Callback'-Funktion möglich. -Das Packen ist Zeitaufwendig, das Entpacken dafür extrem schnell. Die Packdichte entspricht in etwa Zip -Der eigentliche Pack-Algorhythmus ist nicht von mir, das Format, bzw die Archiv-Struktur schon und kann daher wohl kaum von gängigen 'Entpackern' geöffnet werden. ;) -Die Pack.Dll ist 78 KB groß, (die OPTIONALE Unpack.dll,die wie der Name schon vermuten läßt, lediglich Archive entpacken kann, nur 15 KB) -Programmiert in Purebasic 3.20 Systemanforderung ----------------- ab Windows 98 (vermutlich ;-) getestet mit 98(SE) und XP(PE) Das gilt für die Dlls, den PCompressor und natürlich auch für erstellte Selbstentpacker und Standalones. Anmerkungen ----------- Die Dll ist aus Eigenbedarf entwickelt worden, weil die Alternativen teilweise VIEL Geld kosten, oder wenn sie Freeware/Public-Domain sind, zumindest für mich, der ich Anfänger bin, schwer zu portieren sind. Die meisten 'Standalone'-Creators sind zwar kostenlos, aber verfügen selten über Pack-Features, bzw unterstützen keine Unterverzeichnisse und haben oft standardmäßig die unsinnige Eigenschaft die Daten temporär ins gleiche Verzeichnis zu entpacken. Da kann man das Verzeichnis auch gleich komplett in ein Zip-Archiv packen, da hat man dann auch 1 Datei. ;-) PS: Hat natürlich alles noch 'Beta'-Status, deswegen bitte Bescheid sagen, wenn Bugs auftauchen. Und seid nicht zu streng mit mir, ich bin schließlich immer noch Anfänger. PS2: Ach Frank, sei nicht gekränkt, daß ich Deine Pack- Funktionen NICHT benutzt habe, aber das hätte die Header-Größen mindestens verdoppelt. (Und wenn ich den Header dann auch noch mit Profan gecodet hätte, wären sie wohl mindestens 10 mal so groß geworden ;-) Nun, das 'Packen' ist ja nicht der Schwerpunkt der ProSpeed.dll, sondern das SPieleprogrammieren. Runterladbar ist das ganze unter: www.thinkrelative.de/PCompressor.exe Gruß, Mischa
Rolf Koch
| Datum:02.08.02 18:07 (webmaster@rokosoft.de) |
Ja, Roland ist am 4 August wieder aus dem Urlaub zurück ;) Rolf
Mischa
| Datum:04.08.02 23:10 |
Update! -Pack.dll v1.0 (beta) Neu sind Archivbearbeitungsfunktionen: -Archivheader einlesen -Datei zum Archiv hinzufügen -Datei einzeln entpacken -Datei aus dem Archiv löschen http://www.thinkrelative.de/PCompressor.exe Gruß, Mischa
Sven Schmidts
| Datum:05.08.02 08:18 (schmidts@flat2serv.de) |
Blöde Frage, aber wieso eine Komprimierungs-DLL, wo es schon einige gibt?
Mischa
| Datum: 05.08.02 16:11 |
Hallo Sven! Blöde Frage, aber entwickelt hier irgendjemand Programme, die es nicht schon in irgendeiner und möglicherweise besserer Form gibt? Wohl kaum! Es sind also andere Kriterien ausschlaggebend, um die Kopie einer Kopie einer Kopie... zu erstellen. -Verbesssern bisheriger Möglichkeiten: Mein Schwerpunkt und der eigentliche Grund für die Entwicklung der Dll ist die Funktion des 'Standalone' Mir ist kein 'Standalone-Creator' bekannt, der sowohl komprimiert, Unterverzeichnisse unterstützt, Befehlszeilen- parameter verarbeitet, ein eigenes Icon ohne Nachbearbeitung unterstützt, ins 'Temp'-Verzeichnis anstatt ins Haupt- verzeichnis des Programms entpackt, ohne das das eigentliche Programm intern selber entpacken muß, und das noch in Form einer Dll, um dies alles vom eigenen Programm, quasi unsichtbar zu realisieren und das auch noch unkompliziert bei einer lächerlichen 'Mehrbelastung' von 16 KB. Stell Dir vor, Du programmierst ein Multimedia-Programm, mit dem der Anwender eigene Präsentationen erstellen kann. Am Ende bekommt der Benutzer sein 'Runtimemodul', Sounds, Bilder, etc. rausgeschmissen. Super! Viele kleine Dateien, jeder sieht die Puzzlestücke, kann sich locker bedienen. Benutze ich nun meine Dll und erweitere die 'Export'-Funktion des Präsentationsprogrammes um 15 Zeilen Code, habe ich als Resultat EINE Datei. (und die ist noch gepackt) Alle anderen Funktionen der Dll sind entweder logische Konsequenz dessen, was ich eigentlich wollte, oder waren relativ unkomplizierte weitere Schritte, der Vollständigkeit halber. Nach A kommt B, kommt C... -Leidenschaft am Programmieren: Das könnte man wortwörtlich verstehen. ;-) Nein, es geht beim Programmieren ja auch um Spaß, ums Forschen, Lernen, Verstehen und 'weiterkommen'. Dies tat ich zu genüge.. -Kostenfaktor Du sagtest: "..wieso eine Komprimierungs-DLL, wo es schon einige gibt?" Nun, sicher gibt es die. In Profan direkt nutzbar sind das meines Wissens die IB-Zip.dll und die Easyzip.dll aus den Power-Dlls. Die kosten Geld, oder irre ich mich? Das sind sie ja sicherlich auch wert, ohne Frage. Sie entsprechen der 'Norm', ohne Frage. (Franks Pack-Funktionen sind sicherlich günstiger, aber schieden aus schon früher angesprochenen Gründen aus, wobei DIESE Kriterien letztendlich alle anderen auch unbrauchbar für 'Standalones' machen) Aber wenn man die langsame Kompressions-Zeit der Pack.dll in Kauf nimmt, ist sie eine Alternative die, moment laß mich rechnen..äh..NICHTS kostet. Ich fand auf meinen langen Reisen in den unendlichen Weiten des Internetraumes exakt eine 'Komprimierungs-DLL', die so weit man das sagen kann, umsonst ist. Aber ehrlich gesagt, fiel es mir schwer die Funktionen zu portieren. Nein, in Wirklichkeit gelang es mir überhaupt nicht. Und selbst wenn, hätte ich wiederum ein Problem mit der Headergröße bekommen. (Die MINIMALE Headergröße von 150 Kb steht wohl nicht im Verhältnis zu 500 KB Daten für einen Standalone. 16 KB sind da schon angenehmer und übrigens 9,375 mal so klein. ;-) -Wer das also alles hier für überflüssig hält, kann sich ja mit dem was es unlängst gibt zufrieden geben, er wird aber sicherlich nicht so ohne weiteres die Dinge in gleicher Form realisieren können, die ich ansprach. Ein Freund sagte zu mir: "Erst wenn man Geld für ein Programm verlangt, vermittelt man das Gefühl, daß es möglicherweise einen WERT hat.." Vieleicht hat er recht. mit nachdenklichen Grüßen, Mischa

| Zurück zur Übersicht

| Ein kostenloses WebMart Forum WebMart Homepage Tools kostenlos |