Seite 1 von 5
Komprimierungsprogramm für EXE-Dateien (Projektname: Catjia)
Verfasst: 17.07.2008 19:49
von CNESM
Hallo,
ich wollte euch heute ein Projekt vorstellen, das aus einem Firmenprojekt entsprungen ist. Damals benötigte ich die Möglichkeit, mehre Exedateien in einer anderen zu integrieren und diese ohne Festplattennutzung zu starten. Herausgekommen ist einer Tool zum direkten Starten von Application aus dem Speicher.
Nach ein paar Unbauten ist nun ein einfaches Komprimierungsprogram im Stil von UPX entstanden. Projektname: Catjia
Teilweise war dieses Projekt sehr schwierig zu realisieren, da viele API's garnicht oder nur teilweise dokumentiert sind. Irgendwie hab ich das dann doch hinbekommen und wer das Ergebnis testen möchte kann das hier gerne tun. Catjia wurde bisher erfolgreich getestet unter Windows 2000, Windows XP und Windows Vista.
Ich denke aber, das einige Virusscanner motzen werden. Bin gespannt auf eure Erfahrungen
Noch ein kleiner Hinweiss: Testen auf eigene Gefahr!
http://cnesm.de.vu/Catjia.zip
Verfasst: 17.07.2008 20:22
von milan1612
Ich habs mal mit einem kleinen Tool von mir versucht (23.5 KB) und rausgekommen
ist eine funktionierende Exe die aber 28.3 KB groß ist und auch noch das integrierte
Manifest aus dem Original verschlampert

Verfasst: 17.07.2008 20:59
von CNESM
Meiner Meinung nach macht ein Komprimierungsprogramm auch nur Sinn, wenn die Datei auch groß genug ist. Wer zippt schon ne 23,5 KB große Datei

Aber um dich zu beruhigen: Das ist normal, da die gepackte Datei bei so ner scheiss kleinen Datei größer ist als das Orignal. Immerhin enthält die "neue" Datei ja auch ein paar Funktionen mehr gelle

Zudem: Was soll Catjia bei 23,5 KB noch komprimieren
Wie läufts denn bei größeren Dateien (Größer 1 MB etc.)?
Verschlampert

Wat meinste denn damit ?
Verfasst: 17.07.2008 21:11
von milan1612
Mit Verschlampert meine ich dass Catjia eine vorhandene Manifest-Datei (wichtig für XP-Themes)
aus dem Original nicht übernimmt.
Verfasst: 17.07.2008 21:18
von CNESM
Verschlampert .... hab ich noch nie vorher gehört das Wort ... Wieder was gelernt
Das hast du wohl recht. Werd ich mir morgen mal anschauen

Danke für den Hinweis! Da ich bei mir zwar XP und Vista nutze, aber beide ohne den XP Skin Support ist mir das nicht aufgefallen, da ich auch meine Exe Dateien immer ohne Skin Support compile.)
Verfasst: 17.07.2008 21:32
von c4s
Ein Testprogramm von mir wurde von ca 600kb auf die Hälfte geschrumpft.
UPX schafft zwar noch gut 50kb mehr (also auf ~250kb), aber dafür, dass er
so auf die schnelle programmiert ist (hab ich doch richtig verstanden?!), ist
dein Exe-Kompressor dann schon ganz gut

Verfasst: 17.07.2008 21:35
von Little John
Ich hab mal eines meiner Programme damit komprimiert (unter Win XP).
Die Komprimierung ging schnell, das komprimierte Programm startet auch schnell.
Aber:
Das Icon des Programms ist nach dem Komprimieren nicht mehr sichtbar (auf dem Desktop).
Die Versionsinformationen sind nicht mehr sichtbar (rechter Mausklick).
Das Programm erkennt Kommandozeilenparameter nicht mehr oder nicht mehr richtig!!
Ich benutze selbst UPX schon lange nicht mehr, da es sich m.E. nur um "Festplattenkosmetik"
handelt, die bei der Größe der heutigen Festplatten kaum eine Rolle spielt.
Gruß, Little John
Verfasst: 17.07.2008 22:02
von milan1612
@CNESM: Das mit dem Icon (Little John) hat die gleiche Ursache wie die fehlende
Manifest-Datei; Beides ist im Resourcenbereich der Exe untergebracht, den
solltest du nach Möglichkeit schon übernehmen

Verfasst: 17.07.2008 22:15
von Little John
milan1612 hat geschrieben:@CNESM: Das mit dem Icon (Little John) hat die gleiche Ursache wie die fehlende
Manifest-Datei; Beides ist im Resourcenbereich der Exe untergebracht,
Aha, das erklärt einiges. Danke! Die Versionsinformationen sind auch in dem Bereich.
milan1612 hat geschrieben:den solltest du nach Möglichkeit schon übernehmen

Verlustbehaftete Komprimierung ist für best. Graphiken OK, aber ich meine auch, hier sollte eine
verlustfreie Komprimierung benutzt werden.
Gruß, Little John
Verfasst: 17.07.2008 22:30
von ts-soft
Little John hat geschrieben:
Ich benutze selbst UPX schon lange nicht mehr, da es sich m.E. nur um "Festplattenkosmetik"
handelt, die bei der Größe der heutigen Festplatten kaum eine Rolle spielt.
Es geht auch um die Ladezeit, nicht nur um die Größe. Halbsogroße Dateien
sind doppelt so schnell geladen, das entpacken im Speicher geht so schnell,
das spielt dabei kaum ne rolle.
Gerade für USB-Sticks mach das sehr viel Sinn.
@CNESM
Interessante Sache
