Wählen Sie die zu packende Datei und bestätigen mit OK - Packprozess beginnt. Zunächst werden die Ressourcen neu organisiert - aufgrund meines schlechten Codes ist das eventuell ein langsamer Prozess. Dabei wird der Fortschritt durch eine Progressbar (Fortschrittsanzeige) visualisiert. Danach beginnt das Komprimieren - ebenfalls an einer Progressbar sichtbar. Haben Sie die Voreinstellungen nicht verändert, befindet sich neben der gepackten Datei eine Sicherungskopie des Originals auf Ihrer Festplatte... Prinzipiell lässt sich jede ausführbare 32bit Windows Datei, im folgenden PE32 Dateien genannt, komprimieren. Nicht immer jedoch bleibt die Ausführbarkeit erhalten. Generell empfehle ich die Voreinstellungen der Packeroptionen unangetastet zu lassen, wenn nicht besondere Umstände (oder Experimentierfreude) etwas anderes verlangen. Seien Sie vorsichtig beim DLL packen - verwenden Sie am besten XComp. XPack verbraucht beim
Initialisieren (also beim Laden und folgendem Entpacken) Stapelspeicher nicht unerheblichen Ausmaßes. Wenn Sie so verfahren, können Sie bedenkenlos PE32 Dateien mit mehreren Code Sections packen. Das gabs unter alten NT Versionen durchaus wegen des Übergangs von Win16 auf Win32. Oder versuchen Sie mal alte Borland C++ 4.00 (1993) Dateien, insbesondere unter Win9X/ME. |
2.2 Rebuilden einer ausführbaren Datei
Um bei einer Datei nur bestimmte Informationen zu entfernen oder auszutauschen, ohne eine
Kompression der Inhalte, müssen Sie den Mode RadioButton in der Special Abteilung (ganz unten
in der Dialogbox) auf Rebuild verschieben.
Tippen Sie die neue Imagebase in das dafür vorgesehene Textfeld. Benutzen Sie hexadezimale Schreibweise. Deselektieren Sie alle anderen Rebuild Optionen. Betätigen Sie den OK Button. Beachten Sie, dass unter Win9X/ME die Imagebase grösser oder gleich 4 MByte betragen muss, um eine ausführbare PE32 Datei zu erhalten! Aus technischen (verständlichen) Gründen ist eine Änderung der Basisadresse nur möglich, wenn Ihre Datei Relokationsinformationen enthält. Anmerkungen: Es kann vorkommen, dass XComp/XPack selbständig die Imagebase einer Datei verändert: Wenn eine PE32 Datei mit Relokationen und einer Imagebase unter 4 MByte gepackt wird, Sie ausserdem 'Delete relocations' ausgewählt haben, wird die Basisadresse auf 4 MByte angehoben. Das geschieht aus Win9x/ME Kompatibilität. |
Bestätigen Sie die Checkbox 'Delete relocations'. Deselektieren Sie alle anderen Rebuild Optionen. Betätigen Sie den OK Button. Bei dynamisch zu ladenden PE32 Dateien (.DLLs) sollten Sie bedenken,
dass ein Laden an die bevorzugte
Position nicht immer möglich ist. Möglicherweise sollten Sie
auch die Imagebase modifizieren. So können Sie (auf Ihrem System) lauffähige DLLs ohne Relokationen erzeugen. |
2.2.3 MZ-Stub Datei austauschen