Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   self extractor (https://www.delphipraxis.net/4890-self-extractor.html)

Stephan 15. Mai 2003 17:51


self extractor
 
Hi,

Hier ist meine aller erste BETA meines SelfExtractors:

http://stephanmunz.de/wseBETA.exe (775 KB).

Wie der Name schon sagt lassen sich so selbstentpackende Archive erstellen. Einfach Verzeichnis angeben und auf erstellen klicken. Zur Zeit bietet das Programm nur die aller nötigsten Funktionen.

Das ganze ist in Delphi geschrieben und benutzt (fast) ausschließlich die delphieigenen Komponenten (außer einen einzigen Button, der ist FlatStyle :P).

Als Komprimierungsverfahren verwende ich die schon mitgelieferte ZLib Unit.

Würde mich über Vorschläge und Kritiken freuen :)

viele Grüße

Stephan

toms 15. Mai 2003 18:01

Hi,

Ein paar Sachen, welche mir aufgefallen sind:

1) Nach dem Herunterladen erscheint das Fenster
"wareconsult self extractor".
Warum steht unter "Entpacken nach:" "K:\test\"
und nicht z.B "c:\temp\wareconsult"?
(Also ein mögliches Verzeichnis)

1) Der Taskbar Button besitzt keine Beschriftung.

2) Dateien: Der Button "vvv" (Dateien) hat eine seltsame Beschriftung.
Im Edit Feld "Directory" steht
"D:\Stephan\delphi\PROJEKTE\imageresize\compil ed\"
Warum?

3) Erstellen: Im Memo Feld steht: Memo2. Warum?

Stephan 15. Mai 2003 18:07

Hi,

ja, die Verzeichnissnamen sind noch die drin mit denen ichs getestet hab. Du hast recht. Muss ich ändern.

viele Grüße

Stephan

Stanlay Hanks 15. Mai 2003 18:12

Die Kritikpunkte meines "vorredners sind mir auch schon aufgefallen" Allerdings komme ich mit dem programm an sich nicht klar...
1) Muss ich immer alle Dateien eines Ordners packen? (Kann man keine
einzelnen auswählen?)
2) Stürzt er jedes mal fast ab, wenn ich auf erstellen klicke, und
dann bringt er die Meldung: Die Datei sowieso kann nicht geöffnet
werden. (Die Datei, die er erstellen will.
==> konnt mit dem Programm bis jetzt noch nicht viel machen.

Man liest sich, Stanlay 8)

PS: Wenn ich ein Programm starte, möchte ich nicht gleich das "Über" (Info) Fenster da haben. Da würde ich ein extra Fenster machen, oder zumindest einen anderen RegisterReiter beim Start anzeigen. :wink:

Luckie 15. Mai 2003 18:35

Er nimmt die Unterordner nicht mit. Wäre schön, wenn man das noch mit angeben könnte und wo das Archiv hin soll.

Wie sieht das Prinzip von deinem Programm aus?

Stephan 15. Mai 2003 18:47

Hi,

Unterordner werden mitgenommen. Allerdings noch nicht wenn diese leer sind. Im Moment also nur Ordner die auch wirklich was beinhalten.

Das Prinzip selber ist recht einfach:

Als erstes wird in eine Dateiliste erstellt. Dann werden alle Dateien in eine einzige Datei nacheinander angehängt. (Dabei wird jeweils der CRC-Wert berechnet, da die Daten später überprüft werden auf Fehler). Diese Werte werden anschließend ebenfalls angehängt. Als letztes wird noch ein Verzeichnisbaum erstellt und abgespeichert.

Die Daten-Datei wird nun ZLib komprimiert.

Zum Schluß wird die Daten-Datei an die sfx.exe angehängt (welche wiederum per UPX komprimiert ist).

Beim extrahieren werden die Daten dekomprimiert und der Verzeichnisbaum und die CRC-Tabelle temporär extrahiert. Anschließend wird die Daten-Datei außeinandergenommen, wobei die Dateinamen lediglich von der Verzeichnisbaum Datei bestimmt werden. Jede Datei wird hier nochmal CRC-überprüft und gegebenenfalls erhält der Anwender einen Fehler.

viele Grüße

Stephan

Luckie 15. Mai 2003 18:52

Klingt gut und nach einem schönen Stück Programmierarbeit. Gut gemacht.

Stephan 15. Mai 2003 18:54

danke! :D

Luckie 15. Mai 2003 18:58

Das Design ließe sich noch etwas verbessern. Im Moment ist es noch etwas "unhandig".

Stephan 15. Mai 2003 19:05

Hi,

ja, das Design wird sich auf jeden Fall ändern. Ich plan auch onch einiges mehr an Funktionen (wie z.B. Blowfish Verschlüsselung) und das Design werd ich ganz am Schluß erst richtig machen :) Sonst muss ich regelmäßig wieder ändern.

viele Grüße

Stephan


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:10 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz