Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Delphi Shrink v1.3 (https://www.delphipraxis.net/101566-delphi-shrink-v1-3-a.html)

Strahlex 15. Okt 2007 16:37


Delphi Shrink v1.3
 
Liste der Anhänge anzeigen (Anzahl: 4)
http://www.directupload.com/thumb-20463.jpg

Hallo!

Delphi Shrink ist ein Programm um sich die Command-Line-Eingabe bei StripReloc und UPX zu ersparen.

Für die die UPX und StripReloc nicht kennen:
UPX und StripReloc sind Programme um exe-Dateien zu verkleinern. Damit kann man locker eine Kompressionsrate von 60% und bei größeren Anwendungen sogar mehr erziehlen!!

Jetzt auch Unterstützung für PECompact 2:
Hier gibts PECompact 2: PECompact

Hier drei Screenshots:

http://www.directupload.com/thumb-25547.jpg

http://www.directupload.com/thumb-25548.jpg

http://www.directupload.com/thumb-25550.jpg

Jetzt Neu: v1.3 :!:

Änderungen v1.3:
-Unterstützung von PECompact2
-Drag'n Drop
-Mehrere GUI-Größen und ausblenden der Optionen
-config-File
-Pfad-Angabe für die Packer
-StayOnTop-Einstellung
-Fehler der MessageBoxen behoben
-Fehler beim Backup behoben
-weitere kleine Bugfixes

Änderungen v1.2:
-Stapelverarbeitung
-einige Bugfixes
-normales Windows Design

Khabarakh 15. Okt 2007 16:41

Re: Delphi Shrink
 
In dem Screenshot hast du nicht 42% Kompression, sondern 57% :stupid: .

Strahlex 15. Okt 2007 16:47

Re: Delphi Shrink
 
:thumb: Das ist Ansichtssache, WinRAR gibt ja auch an wieviel noch da ist und nicht wieviel weg ist!

mkinzler 15. Okt 2007 16:50

Re: Delphi Shrink
 
Dann würde ja eine 100%tige Kompression bedeuten, daß nichts gepackt werden konnte :gruebel:

Strahlex 15. Okt 2007 16:56

Re: Delphi Shrink
 
Sieh hier:

http://www.directupload.com/thumb-20478.jpg

Phoenix 15. Okt 2007 17:01

Re: Delphi Shrink
 
Nur weil die etwas falsch machen heisst das nicht, dass Du es genauso falsch machen musst.

Strahlex 15. Okt 2007 17:10

Re: Delphi Shrink
 
Ja stimmt :thumb:

ich werd das gleich beheben...

Definition:
Die Kompressionsrate spiegelt das Verhältnis der Dateigröße wider, das zwischen einem komprimierten und einer unkomprimierten Signal besteht. Das Verhältnis kann als solches angegeben werden, beispielsweise 1:100, und besagt, dass die Dateigröße nach der Kompression einhundertstel der vorherigen Dateigröße beträgt. Statt der Verhältnisangabe kann die Kompressionsrate auch als Prozentsatz angegeben werden, beispielsweise 94 %. Das bedeutet, dass die Dateigröße der komprimierten Datei um 94 % gegenüber der Originaldatei verkleinert wurde.
Quelle: http://www.itwissen.info/definition/...sionsrate.html

Strahlex 15. Okt 2007 17:13

Re: Delphi Shrink
 
:arrow: So jetzt ist es behoben!!!

Go2EITS 16. Okt 2007 06:35

Re: Delphi Shrink
 
Eigentlich wollte ich soetwas machen, bzw. ist in Arbeit :wink:

Folgendes ist mir aufgefallen:
- Original sichern, bzw. als .bak anlegen.
Einstellung mit Checkbox als .bak vorbelegen, das vom Original ein .bak gemacht wird und bitte nur einmal anlegen. (Andere Programme überschreiben die Original.bak dann mit der komprimierten Datei, wenn man versehentlich eine komprimierte Datei ein zweites Mal komprimieren möchte.)
- Prüfung, ob eine Datei schon komprimiert ist, fehlt wohl.
- Unschrink fehlt.

Kann-Vorschläge:
Pfade zum UPX /Striplog einstellbar (muss aber nicht sein, wenn man die neueste UPX/Striploc in Deinen Programmordner legen kann)
Ausgabe der Console in das Programm leiten, damit man etwas sieht.

Sonst ganz ok, Dein Programm!

Strahlex 16. Okt 2007 19:23

Re: Delphi Shrink v1.1
 
Danke für die Tipps Go2EITS :thumb: ,

ich habe jetzt die meisten deiner Tipps befolgt und v1.1 fertiggestellt!

Flips 16. Okt 2007 21:39

Re: Delphi Shrink v1.1
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi, ich bekomme ne Exception beim Beenden (siehe Anhang).
Reproduzierbar bei mir.
Ich lade die Datei, wenn ich sie nur teste oder Infos anzeigen lasse und das Programm dann beende kommt der Fehler nicht, wenn ich ne EXE (de)komprimiere kommt er.

Windows XP SP2 mit allen Updates

Strahlex 16. Okt 2007 22:35

Re: Delphi Shrink v1.1
 
Ich habe jetzt einige kleinere Bugs gefixt! :coder:

Tritt der Fehler noch immer auf? :shock:

ringli 17. Okt 2007 05:59

Re: Delphi Shrink v1.1
 
Ein paar kleine Anmerkungen/Fragen zu deinem Programm:

1. Hast du mal Tests durchgeführt was die Dateigröße betrifft wenn du einmal StripReloc verwendest und einmal nicht? Meines Wissens nach verwendet UPX sowieso die StripReloc-Methode, so das man sich diesen Schritt sparen kann wenn UPX verwendet wird.

2. Wann liest du eigentlich das Konsolenfenster aus? Bei mir wird die Ausgabe nämlich erst angezeigt wenn der Vorgang abgeschlossen ist und das dauert bei der "brute"-Methode etwas. ;)

3. Während der Packvorgang läuft, werden der Shrink- und der Durchsuchenbutton nicht ausgegraut so das ich während des Packvorganges eine weitere Datei auswählen und packen könnte. Ist das so gewollt?

4. Vielleicht solltest du von vornherein die Möglichkeit schaffen mehrere Dateien auszuwählen und die dann nacheinander abzuarbeiten.

5. Ich finde es immer unschön wenn Programme ein Hintergrundbild verwenden und/oder sich nicht an die eingestellte Windowsfarbgebung halten. Ist aber nur meine persönliche Meinung dazu.

Flips 17. Okt 2007 12:18

Re: Delphi Shrink v1.1
 
Zitat:

Zitat von Strahlex
Ich habe jetzt einige kleinere Bugs gefixt! :coder:

Tritt der Fehler noch immer auf? :shock:

Jop, immer noch beim beenden.

Go2EITS 18. Okt 2007 06:17

Re: Delphi Shrink v1.1
 
@strahlex

Prima, das Programm kommt voran.

Beim Dekomprimieren auch das Feld "Originaldatei sichern" grauen.

Jetzt fehlt nur noch der Pfad zu UPX und Striploc.

Die kosmetischen Behandlungen sind bei den meisen Usern nicht gern gesehen. Konzentriere Dich auf die Inhalte und erstelle ein oder zwei "bunte" Versionen separat zu download. (Screenshot nicht vergessen.)

An die Liste, in der mehrere Dateien sind, zum Beispiel kann diese @Liste.txt heißen, hatte ich auch gedacht. Damit kann ich ganze Projekte in einem Schwung packen und wieder entpacken, wenn etwas nicht funktioniert.

Besonders gut finde ich, dass ich die Einstellungen auf der ersten Seite einnehmen kann.

Die Leerräume werden in der Konsolenanzeige als Kästchen angezeigt. Die Grafik kommt bei mir "zerbröselt" an. (Flatscreen).

Ich glaube, es wird ein gutes und sauberes Programm. :hi:

//Nachtrag:
Wenn Du alternativ das Packen von Dateien mit ein oder zwei anderen Packern ermöglichst, dann wäre es TOP!

Bei mir tritt der Fehler beim Schließen auch auf. Du hast eine Datei noch offen oder das Consolenfenster nicht geschlossen.
Vor dem Form1.Close bitte abfangen.

Relicted 18. Okt 2007 07:53

Re: Delphi Shrink v1.1
 
Liste der Anhänge anzeigen (Anzahl: 1)
huhu!

habe auch noch nen bug gefunden... bitte die Position der form auf poScreenCenter stellen... bei mir startet's zwischen den beiden monitoren...

dann hab ich noch nen fehler gefunden (denk ich)... siehe screenshot. datei ausgewählt alle checkboxen angeklickt und auf komprimieren... und da kamen dann die netten fehler *shrug*..


gruß
reli

hoika 18. Okt 2007 08:45

Re: Delphi Shrink v1.1
 
Hallo,

von ShrinkReloc habe ich ja noch nie was gehört,
Schande über mich :)

Ist es wirklich so, dass das Entfernen des Reloc-Bereiches
bei Exe-Dateien ohne Probleme möglich ist ?

Warum macht das dann der Delphi-Compiler nicht selbst ?

Hinweis an Delphi-Speedup ... *wink*


Klappt denn das Debuggen (z.B. remote) trotzdem ?


Heiko

CReber 18. Okt 2007 19:11

Re: Delphi Shrink v1.1
 
Nützliches Tool, ist gespeichert ;)

Meine Vorschläge:
  • Das ganze als Single-Exe (thinstall)
  • Programme sollten per Drag&Drop ins Fenster gezogen werden können
  • Das ganze per Parameter starten lassen (damit ich meine ganzen Projekte mit einem Mal automatisch verkleinern kann^^)
  • Die Kompressionsraten vereinfachen (small-middle-best-hardcore), ich hab nämlich keine Ahnung was es mit Methods und Filters auf sich hat :)

Strahlex 18. Okt 2007 20:33

Re: Delphi Shrink v1.1
 
:roteyes: Hui das is jetzt viel auf einmal:

1. Stripreloc
2. Ich habe jetzt Version 1.2 fertiggestellt
3. Ein weiteres Update wird bald erfolgen (Pfade usw.)
4. Ich bin jetzt einmal zu faul um neue Screenshots hochzuladen
5. Ich werde versuchen möglichst alle Wünsche einzubringen

Go2EITS 20. Okt 2007 07:42

Re: Delphi Shrink v1.2
 
@Strahlex

Die Anwendung ist mit der Batchverbeitung schon komfortabler geworden. Von dem Drag und Drop halte ich nicht so viel, sinnvoller halte ich, die in der Liste befindlichen Dateien zu prüfen, ob diese schon gepackt sind und in rot anzuzeigen. Dies könntest Du, wenn Du einfach nach den Bytes in der Datei suchst, die nur in komprimierten Dateien vorkommem.

Und dann, wenn dies fertig ist, bei der Dateiauswahl schon im Verzeichnis nachsehen, ob die Dateien schon gepackt sind und in rot die komprimierten Dateien anzeigen.

So ein kleines Tool ist schon eine große Herausforderung, wenn es sich von den anderen Programmen abheben soll! :thumb:
Aber mit der Batchverarbeitung kommt Dein GUI zum shrinken bei mir auf Platz 1!

Mastersurfer84 20. Okt 2007 10:24

Re: Delphi Shrink v1.2
 
Hi,

nettes programm!!
Hab nur einen kleinen Schreibfehler gefunden: Bei UPX hast du die "Kopressionsmethode" - fehlt ein "m".

Grüße

Strahlex 25. Okt 2007 18:28

Re: Delphi Shrink v1.3
 
Hallo Leute,

Danke für eure Meldungen und Anregungen :cheers:

Ich habe soeben v1.3 fertiggestellt.

Ein Installer und Updates werden bald folgen. :thumb:

Hunni 25. Okt 2007 21:43

Re: Delphi Shrink v1.3
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

habe mir gerade die Version 1.3 herunter geladen und getestet.

Ein kleiner Fehler ist mir auf gefallen:
- Wenn die cfg Datei Fehlt erstellst Du eine neue Datei mit default Werten.
- Man erhält jetzt aber trotzdem beim Start des Programmes folgende Fehlermeldung "Listenindex überschreitet das Maximum (3)"
- Vielleicht leigt es daran, das der Path zu "PECompact2" Fehlt was bei mir auch nicht installiert ist.

Edit:
- Der Bug kommt von einem fehlenden Eintrag in der default cfg Datei für die Option "Immer im Vordergrund"

Ansonsten ein sehr gutes Programm

Gruß

Torsten

Go2EITS 26. Okt 2007 17:40

Re: Delphi Shrink v1.3
 
So und nun statt Neuerungen bitte die gemeldeten Bugs beseitigen:

Nach dem Shrinken einer Datei kann ich nicht DeShrinken.
Beim DeShrinken wird zudem nachgefragt, ob man die Backupdatei überschreiben soll.
Besser:
1. DeShrinken ohne Abfrage, ob das Backup überschreiben werden soll. (Backup/Original nicht antasten)
2. Beim (versehentlichen) zweiten Shrinken einer Datei Backup nicht überschreiben, wenn schon vorhanden, auch wenn BACKUP ANLEGEN markiert ist, wiel ich sonst wohl die geshrinkete Datei sichere. Das Original ist dann weg!
3. Zusätzliche Option: Original wieder herstellen.

Und beim Deshrinken kommt eine Fehlermeldung "Acess denied" oder so ä.:
Anscheinend greifst Du noch immer auf die Datei zu. Bitte mal die offene Verbindung lösen.

Jetzt habe ich die zwei Shrinker, aber keine Vergleichsmöglichkeit, daher mein Vorschlag:
Einführung von einem sogenannten Testmodus:
Ein Testmodus beläßt das Original unverändert und speichert zwei neue Dateien ab: z. B.:
Delphi32.exe //unverändert
Delphi32_UPX.exe //mit UPX gepackt
Delphi32_PC.exe // mit PE gepackt

Anzeige der Größe der Dateien und Möglichkeit die Dateien jeweils aus dem Programm starten zu können, um zu sehen, ob
die Programme laufen. (Tun sie nämlich nicht immer)
"Listenindex überschreitet das Maximum (3)": Denk daran: Listen beginnen bei 0! Abfrage mit >> for i=1 to High[liste]-1 <<

Das wären wohl sinnvolle Ergänzungen.
Bis bald! CU! :thumb:

rawsoul 17. Feb 2008 22:15

Re: Delphi Shrink v1.3
 
Danke für das nützliche Programm, werde ich bestimmt öfters nutzen! :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:12 Uhr.

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