Autor Beitrag
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 24.01.03 00:36 
Sag UPX mal, es soll die Ressoiurcen nicht mit packen. ich weiß nicht, ob es hilft, nur eine Idee.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 24.01.03 11:35 
Hinterwäldler hat folgendes geschrieben:
Ich hatte nicht die Absicht UBXShell hier auszuwalzen.

Das sollst du auch gar nicht. Es reicht eine kurze Übersicht, die auch von den Regeln so gefordert wird. Etwa so:
Zitat:
Hallo Leute.

Ich habe hier mal meine UPX-Shell hochgeladen. Sie vereinfacht den Umgang mit dem Komprimierer UPX, bla bla bla ...

Das Programm findet ihr hier: <URL>
Den Quellcode hier: <URL>

Und wer noch mehr zu UPX und seinen Möglichkeiten wissen will, der schaut auf meiner Homepage (<URL>).

Fertig. - Mehr muss man nicht sagen. Wenn, dann ergibt sich das IMHO im Laufe der Diskussion. Dass du die Pflege des Programmcodes übernehmen willst, obwohl es Open-Source ist, halte ich nicht nur für legitim sondern auch für notwendig.
Zwar gibst du den Quellcode frei, aber ich kann damit bspw. nichts anfangen, weil mir die RX-Komponenten fehlen. Also bin ich darauf angewiesen, dir die Fehler zu melden und zu hoffen, dass du sie ernst nimmst und evtl. sogar behebst.
Aber du solltest auch auf Beiträge antworten und nicht nur deinen ersten bearbeiten. Oder: wenn ich dir hier im Forum einen Fehler melde, dann möchte ich deine Reaktion auch hier finden!, und nicht auf deiner Homepage in einem FAQ oder weiß der Geier wo ... Dann könnten wir uns das alles auch gleich sparen und den kompletten Thread wieder löschen.

Als Anregung empfehle ich dir die ganzen anderen Postings in den Sparten Open-Source und Freeware. Da wirst du ebenfalls viele Kritiken finden, natürlich! Was aber diese anderen Threads von dem hier unterscheidet, ist die Tatsache, dass sich der Programmierer zu Wort meldet (so, dass man das auch als Wortmeldung erkennt!), sich zu den Fehlern äußert und auch neue Versionen zum Testen zur Verfügung stellt.


Also, noch einmal folgende Punkte meinerseits:
  • Viele Programme bieten beim Start eine Suchfunktion bzw. manuelle Auswahl, wenn irgendeine benötigte Komponente nicht gefunden wurde. In deinem Fall: UPX. Anstelle der Box am Anfang ("Ich kann ... UPX.EXE ... nicht finden.") solltest du genau diese anderen Möglichkeiten bieten.
  • Die Register-Seite "Anfang und Ende"; wofür ist die gut?
  • Es wäre wünschenswert, dass die vom User vorgenommenen Änderungen bzw. Einstellungen (sprich: Kompressionsrate, usw.) in irgendeiner Form gespeichert werden. In 98% aller Fälle ist wohl davon auszugehen, dass der Anwender die Datei B nach dem selben Muster wie die Datei A komprimiert. Wenn diese Einstellungen beim Beenden der Shell gespeichert und beim nächsten Start wieder geladen werden, wäre das sehr hilfreich.
  • Ich vermisse übrigens die Backup-Option. Manchmal will man eine Datei komprimieren oder dekomprimieren, möchte dabei aber zur Sicherheit das Original behalten.
    btw: Optionen. Einige der Optionen müssen nicht zwangsläufig angegeben werden. Ein ziemlich simpler Aufruf wäre der:
    ausblenden Quelltext
    1:
    upx -9 AppName.exe					

    Vielleicht sollte man einige Punkte so gestalten, dass sie abschaltbar sind, bzw. dass nur die Optionen berücksichtigt werden, die nicht den Standardeinstellungen entsprechen.
  • Geradezu anbieten würde sich eine Art kontextsensitive Hilfe oder Tooltipps. Einige Optionen sind nicht auf Anhieb klar. Beispielsweise die Auswahl der Kompressionsmethode:
    Zitat:
    (*) nrv2b ( ) nrv2d

    Prima. :roll: Darunter kann ich mir nichts vorstellen. Aber deswegen jetzt extra die Registerseite wechseln und schauen, ob du das möglicherweise kurz beschrieben hast? Oder vielleicht in die DOS-Box gehen und die Hilfe von UPX aufrufen? Ein Hilfe-Button wäre nicht schlecht, der eine Seite mit kurzen Erklärungen aufruft. Oder eben eine Kontext-Hilfe mit Button in der Titelleiste; den klickt man an, wählt das gewünschte Element und erhält eine kurze Erklärung was es bedeutet oder bewirkt. Natürlich könnte ich auch die UPX-Hilfe in deinem Programm aufrufen, aber ...
  • Wenn ich auf der Seite "Kommandos" die beiden Befehle "UPX-Hilfe" und "UPX-Lizenz" aufrufen will, hängt das Programm und kann nur noch über den TaskMan beendet werden (Win98 getestet).
    Aber das ist, denke ich, ein Problem der Funktion "CaptureDOSCommand". Einmal hing sich das Programm beim Komprimieren einer Datei auf; beim zweiten Mal ging´s dann ... beim Testen einer Datei zeigte die Shell nur Bruchstücke des Ergebnisses an. Diese Funktion solltest du unbedingt kontrollieren und ggf. überarbeiten.
  • Auch hier; die Programmlogik: wenn zum Komprimieren, Dekomprimieren, usw. eine Datei erwartet wird (logischerweise!), dann sollten die entsprechenden Buttons und/oder Funktionen solange deaktiviert sein, bis die Bedingung erfüllt ist.
    Ich bin ziemlich sicher, dass diese Eingabeleiste im oberen Teil auch eine Art "OnChange"-Ereignis hat. Das wäre der passende Ansatzpunkt zum Aktivieren und Deaktivieren der Buttons.
  • Auch schon genannt: es lässt sich nur eine Datei komprimieren. Du begründest dies damit:
    Zitat:
    Dazu muß man sich allerdings wieder auf die Befehlszeile begeben und Wildcards benutzen. Einfach mal ausprobieren. Echt benötigt wird das aber kaum. Bevor ich in der DOS-Box die etwas umfangreiche Kommandozeile für UPX fehlerlos formuliere, ist dies für jede Datei optimal geklickt.

    Mein Vorschlag war, dass du die Eingabezeile durch eine Listbox ersetzt, in die mehrere Dateien eingetragen werden können. Ein Klick komprimiert oder dekomprimiert dann diese Dateien in einem Rutsch.
  • Eine weitere Idee war die Integration in den Windows-Explorer. Für alle Dateitypen, die sich von UPX komprimieren lassen, könnte im Kontextmenü ein Punkt zur Verfügung stehen, der dein Programm aufruft.
  • Dein Programm lässt sich mehrfach starten. Da man bisher nur eine Datei komprimieren kann, mag´s okay sein. Dadurch wird aber das Handling bei mehreren Dateien nicht unbedingt vereinfacht. Eine Integration in den Explorer hätte in diesem Fall den unerwünschten Nebeneffekt, dass beim Markieren mehrerer Dateien auch entsprechend viele Instanzen der Shell gestartet werden.
    Die Lösung heißt WM_COPYDATA. Damit kannst du an eine bereits laufende Instanz Informationen (z.B. den als Parameter übergebenen Dateinamen) übermitteln. Und der Mehrfachstart kann über sog. Mutexes verhindert werden.
  • Und zum Schluss: diese RX-Komponenten. Nun ja, jeder benutzt das, was er toll findet. Schau dir mal dein Programm mit dem Windows-Schema "Kontrast Weiß" an. Dank 3D-Effekt der Schrift tränen einem die Augen.
    Meine persönliche Meinung ist, dass du auf die RX-Komponenten auch verzichten könntest. Du benutzt nichts Außergewöhnliches, was dir Delphi nicht bieten würde. Vielleicht schreibst du (meinetwegen nur testweise!) mal eine Version der Shell, die ohne extra Komponenten auskommt.
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Fr 24.01.03 11:57 
@Hinterwälder: Bitte Antworte auf die Fragen nicht durch Editieren deines ersten Beitrages. Wenn eine ordentliche Diskussion hier nicht mehr möglich ist wird das Topic geschlossen!

Gruß
TINO
Hinterwäldler Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Fr 24.01.03 16:38 
Es ist schon eigenartig, einige Member vermissen meine Teilnahme im Forum und andere wiederum können gar nicht so schnell antworten, wie ich meine Beiträge schreibe und wenn sie überholt sind, auch wieder ändere(n muß). Sehr Eigenartig.
Also, ich habe meine "Drohung" wahr gemacht und meiner Homepage einen Abschnitt "FAQ für UBXShell" hinzugefügt. Dieser Abschnitt wird gefunden auf der Seite "Programme - UBXShell" meiner Page, am Ende der Seite, unterhalb der Hyperlinks zum Download. Momentan verbleiben sie auch dort. Sollte die Fragerei überhand nehmen, wird sich dort später nur ein Menü zum Aufruf der Antworten befinden.
Eigendlich war ich der Meinung, hier in diesem Forum ein sachkundiges Publikum zu finden, welches mir bei der Bewältigung meiner Probleme mit UPXShell-Projekt hilft. Einigen Usern scheint das Programm in dieser Form etwas sehr provokativ zu sein. Das war auch Sinn und Zweck. Das dies von Anfang an so angedacht ist, habe ich an mehreren Stellen schon betont. Eigentümlicher Weise habt Ihr das geflissentlich überlesen.

Obwohl ich keiner der Autoren von UBX bin, werde ich auf einige von Euch aufgeworfene und sachliche Fragen eingehen. Trotz allem muß ich auch an dieser Stelle auf UPX.SourceForge.Net verweisen.

Da ist die Frage von Mimi bezüglich seines "Sokubahn". Ich habe mir also sein nettes Spielchen (fast 3,7 MB) von seine Homepage geholt und seine Angaben überprüft. Editor und SetOptionen waren schon erfolgreich komprimiert. Seine Bemerkungen bezüglich Sokubahn.exe kann ich allerdings nicht nachvollziehen. An Geschwindigkeit hat es, nachdem ich es komprimiert hatte, auf keinem Fall eingebüst. Allerdings ist mein Prozessor ein 800 MHz Duron.
Von mir wurden folgende Parameter angewendet:
--best --crp-ms=999999 --nrv2d
und das Ergebnis war dann ein mickriges Ratio von 55.69%, begründet in, so vermute ich, den vielen ausgelagerten Resourcen. Sollte das Ergebnis von Dir nicht reproduzierbar sein, dann verwende mal statt der Option --best die Option -1. Hier wird zwar nur in Deinem Spiel ein Ratio von 66-67% erreicht, aber dafür kann Sokubahn seine includierten Resourcen auch viel schneller lesen. Diese Einstellungen kannst Du am sichersten mit UPXShell variieren. Einfach mal probieren!
Diese Frage ist für mich Anlaß, der UPXShell einen Button zum Test des komprimierten Programmes aus der Shell heraus zu spendieren. Das wirft gleich die Frage auf, was soll aufgerufen werden, wenn es sich um DLL's oder ähnliches handelt?

Eine weitere wesentliche Frage ist die von Luckie. Er bezweifelt, das seine Ressoiurcen von UPX nicht richtig gepackt werden können.
Also ich habe da nicht die geringsten Probleme. Lade dir mal von meiner Page die UPXShell herunter und Du wirst feststellen, das UPX sehr wohl die Resourcen einer Anwendung packen kann. Dies war auch der entscheidente Grund, warum ich statt einer Read.me alles Wesentliche einer Memoausgabe anvertraute. Dadurch ist der Platzbedarf auf der Festplatte insgesamt geringer geworden. Diese Art der Read.me hat noch einen weiteren Vorteil: sie kann nicht verloren gehen. Zugegeben, es ist auch eine Frage des persönlichen Geschmacks. Ich gehe aber davon aus, das später, wenn die Shell fertig ist, diese von Festplatte zu Festplatte weiter gereicht wird und wie schnell können dadurch wesentliche Dokumente verloren gehen. Schon jetzt wird dieser Memoausgabe kaum Beachtung geschenkt, was soll dann mal später werden (ich kenne mich ja selbst).

Popov möge mir verzeihen, wenn er auf meinen paar Home-Seiten nicht sofort das Gewünschte gefunden hat. Vieleicht versucht er es mal bei Torry oder DSP. Hi,Hi. Bitte nicht böse sein. Ich habe übrigens Deine Page auch besucht...
Ach so, alle von mir verwendeten Bilder können mit allen mir zur Verfügung stehenden Browsern, das sind Explorer6, Netscape7, Opera6 und AOL7 fehlerlos abgebildet werden. Ich verstehs nicht.

Noch immer warte ich auf Vorschläge zur Verbesserung und Erweiterung, unterlegt u.U. auch mit Codeschnipsel, von Euch. Ihr sollt später mal die Nutznieser dieses Tools sein und damit arbeiten, also Euch auch mit diesem identifizieren können.

Bleibt schön neugierig, Euer Hinterwäldler
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 24.01.03 16:43 
Hinterwäldler hat folgendes geschrieben:
Eine weitere wesentliche Frage ist die von Luckie. Er bezweifelt, das seine Ressoiurcen von UPX nicht richtig gepackt werden können.

Ich weiß nicht, ob wir uns hier falsch verstehen. das war keine Frage, sondern eine Vermutung, dass das Programm von mimi Probleme bekommt, wenn die Ressourcen mit gepackt werden. Und er sollte es mal so probieren, dass UPX die Ressourcen in Ruhe läßt.
hitstec
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 295



BeitragVerfasst: Fr 24.01.03 17:58 
Man, kaum bin ich einen halben Tag von meinem letzten Posting weg, schon muss ich mich mit Romanen auseinander setzen.

Woher habt ihr soviel Zeit? Arbeistlos? Können sich manche nicht kurz fassen?

Hmm.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 24.01.03 20:57 
Hinterwäldler hat folgendes geschrieben:
... Du wirst feststellen, das UPX sehr wohl die Resourcen einer Anwendung packen kann.

Es gibt aber Situationen, in denen man die Ressourcen bzw. Teile davon (sofern möglich) von einer Komprimierung ausnehmen sollte. Beispiel: XP-Manifest-Ressourcen sollten nach Möglichkeit nicht komprimiert werden, weil Windows XP sonst den Start des Programms mit einer Fehlermeldung beantwortet.

Zitat:
Ach so, alle von mir verwendeten Bilder können mit allen mir zur Verfügung stehenden Browsern, das sind Explorer6, Netscape7, Opera6 und AOL7 fehlerlos abgebildet werden. Ich verstehs nicht.

Ich versteh´s. Popov meinte die Bitmap in deinem Programm! :roll: Die ist bei mir auch nur schwarz/weiß.

Zitat:
Noch immer warte ich auf Vorschläge zur Verbesserung ...

(...)


PS: Noch ein Übersetzungsfehler. "Strip nicht verändern" bezieht sich in deinem Programm auf die Option "--strip-relocs=?". In der UPX-Hilfe steht
Zitat:
--strip-relocs=0
Don't strip relocation records.

--strip-relocs=1
Strip relocation records. [DEFAULT]
This option only works on executables with base
address greater or equal to 0x400000. Usually the
compressed files becomes smaller, but some files
may become larger. Note that the resulting file will
not work under Win32s.
UPX never strips relocations from a DLL
regardless of this option.

Das Ja/Nein bezieht sich also nicht auf "strip" sondern auf "Relocation Records"; auch wenn ich ehrlich zugeben muss: ich habe keine Ahnung, wie man das am besten ins Deutsche übersetzen kann.
Mein Englisch-Wörterbuch hat folgendes geschrieben:
relocation
der Umzug
die Umsiedlung
der Standortwechsel
die Versetzung
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 26.01.03 09:43 
Titel: Do it yourself!
Seit gut einem Monat redet Hinterwäldler nun von den Möglichkeiten seiner UPX-Shell, von UPX, von Kritik und Wünschen, die er hat (und auch bekam) ...und am Quellcode hat sich in der ganzen Zeit allerdings nichts getan. :?

Gestern habe ich angefangen, heute kommt der Rest - dann habe ich meine eigene Shell. Es fehlen noch kleinere Dinge, aber fast alle Optionen, die man von Hinterwäldlers Programm kennt, sind bereits drin; und komprimieren/dekomprimieren klappt auch schon.
Ich habe allerdings auf das "capturen" der Ausgabe verzichtet und mich auf "ShellExecute" beschränkt. Dafür ließen sich drei verschiedene UPX-Versionen (1.02, 1.24, 1.90) problemlos aufrufen.

Aktueller Stand meiner Beta: 31,5k, unkomprimiert.
Hinterwäldler Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mo 27.01.03 18:55 
Hier steht sehr viel
Interessenten drucken das gleich aus.

Nun ist es passiert, die Version 0.2 ist fertig. Es hat etwas länger gedauert, aber ich mache das auch nur während meiner Freizeit !!!
Die UPXShell kann ab sofort von jedem Delphiprogrammierer ab Delphi 3 geladen werden. Ohne RX-VCL oder JVCL, nur Borland !!! Dafür wird jetzt offensichtlich, warum niemand gern TTrackBar nimt. Ihr werdet schon sehen. Und noch etwas grundsätzliches: Die wieder für NON-Delphi-Programmierer zur Verfügung stehende UPXShell.exe wurde mit Delphi 6 und allen Debuginfos kompilert. Eigendlich müßte dann bei einem Absturz die dafür zuständige Adresse angezeigt werden. Ich bin gespannt, was da raus kommt.
Von MathiasSimmack wird wiederholt eine Integration in den Windows-Explorer gewünscht. Ich gehe diesen Weg nicht mit! Mit einer solchen Maßnahme können wir unsere Maschinen gleich zum Abschuß frei geben. Er hat es an dieser Stelle offensichtlich noch immer nicht verstanden: UPX ist kein Spielzeug für Hauptschüler sondern ein Werkzeug für ernsthafte und verantwortungsbewußte Programmierer. Abgesehen davon, wenn wir uns an fremden Programmen vergreifen, ist das eine Copyrightverletzung und damit Wasser auf die Mühlen der "Rechtsschützer".
Also wenn Ihr mich fragt, wäre ich betroffen würde ich mich auch ersthaft wehren. Darum wird auch nur immer eine Datei komprimiert werden können! Um eine EXE und paar DLL's zu komprimieren, wird mit der Shell wirklich nur ein paar Sekunden mehr als mit Wildcards benötigt und das Ergebnis ist auf jeden Dateityp speziell zugeschnitten.
Was gibt es nun für wesentliche Veränderungen.
1. TabSheet1 ist weg. Sie hat ihre Aufgabe getan und wird nicht mehr gebraucht. Oder doch noch?
2. Die Kommando-Buttons sind mit ihrer Eigenschaft "enabled" von einer gültigen Dateiangabe abhängig: Keine Datei - dann auch keine Kommandos.
3. Die Arbeitsperioden im CapitureDosCommand wurden von 0,1 auf 0,5 Sekunden verlängert (falls bei --best der kleine Hunger kommt). Ob es was bringt, wird sich zeigen.
4. Ein Instanzmanager wurde implementiert. Das Problem bei diesem war, das er sowohl unter D3 wie auch unter D6 einsetzbar und zudem ein einfaches Handling bieten soll. Das alles unter einen Hut zu bekommen war nicht einfach. Borland hat es uns wirklich nicht einfach gemacht. Bei UNDU.COM habe ich so etwas gefunden. Die Unit kann problemlos und bei Bedarf in andere Anwendungen eingefügt werden. Unter D6 gibt es einige Warnungen, die allerdings gar nicht auftreten dürften. Darum die EXE auch mit allen Debuginfos!
5. Jetzt können Aufgrund eines erweiterten Dateihandling auch komprimierte DLL's mit dem Aufruf der dazu gehörenden EXE auf Funktionsfähigkeit getestet werden. Müßt Ihr Euch mal ansehen und beurteilen.
6. Alle Angaben zu Speicherbedarf und vorhandenem Speicher wurden in KByte umgewandelt. Darum kommen auch ein paar "krumme" Werte heraus. Ich finde das übersichtlicher. Wer rechnet denn auch schon in Bytes? Die Trackbar wurde auf Maximal gestellt. Achtung also, bei alten Maschinen.

Was muß aus meiner Sicht noch getan werden?

1. Ist eine Hilfe notwendig?
Ich glaube nicht. Ich bin überzeugt, das wenn die jetzige TabSheet3 einen ordentlichen Memoinhalt und eine Druckfunktion erhält, dies ausreichend sein sollte. Seht Euch das Motto zum Memo an und wie gut kennen wir uns.
2. Eine Backup-Funktion?
Also ich persönlich nutze viel lieber das GExpert "Backup Projekt" regelmäßig. Bei vielen anderen Compilern gibt es mittlerweile ähnliche Tools oder Möglichkeiten. Warum alles doppelt und dreifach? Eine perfekte Backup-Funktion würde der ungesetzlichen Veränderung einer Datei durch Dritte Vorschub leisten. Das einzige wäre die Aktivierung des UPX-internen Backup, aber ob das das Ware ist?
3. Die Konkretisierung der Caption-Inhalte!
Das ist sehr wichtig, auch im Zusammenhang der geplanten druckbaren Hilfe-ASCII auf TabSheet3. Der Anwender muß wissen, was er macht. Die beiden Autoren von UPX halten sich diesbezüglich sehr bedeckt. Ich wollte nur eine deutsche Dokumentation per eMail, die ja vorhanden sein sollte, denn meines Wissens spricht man an der Uni Linz noch immer die deutsche Sprache.
Mattias hat letztens meine falsche Interpretation angesprochen. In meiner etwas verschommenen Erinnerung gab es aber unter C++ oder VB den Ausdruck "Strip". Ich kann mich irren. Profis sind gefragt. Anders sieht das bei "nrv2b" und "nrv2d" aus. Dabei handelt es sich vermudlich um historisch unterschiedlich entstandenen Code. Zum Beispiel Packlite, LZExe oder Diät könnte es sein. Um das herauszufinden ist allerdings das "Abklappern" einiger 100 m Assempler notwendig. Also ich habe nicht die Zeit und lasse es dabei. Markus F. X. J. Oberhumer und Laszlo Molnar gaben als Server für ihre Quellen den der FU Berlin an. Ihr könnt ja mal reinschauen in den Ftp-Server....
Wer zu den Captions die zündente Idee oder die richtige Übersetzung besitzt, veröffentlicht sie hier oder kann Sie mir per eMail schicken.
4. Glyph's für die BitBtn's
Wer dazu Ampitionen hat und eine künstlerische Ader besitzt, kann ja mal in paar Glyph's entwerfen. Die werden von mir dankbar angenommen. Der Künstler erhält dann auch in den Credits eine Spitzenposition. Versprochen !!!
5. Es ist Euer Tool
und es soll in einigen Wochen (oder vieleicht schon heute) die Delphi IDE - Tools verzieren.
Findet Ihr Bugs oder möchtet Ihr den Code an irgend einer Stelle verbessern, haltet Euch nicht zurück, Ihr seit doch alle gute Programmierer !!! Meckern ist nur eine Seite und gebraucht wird das Teil von fast jedem.
6. Wenn Ihr mir kompletten Code schicken wollt,
dann bitte die *.dfm als ASCII. Ihr wist schon, wegen D3 - D6 oder nur D3.

Der Download sollte eigendlich funktionieren.

Für NON-Delphi - Programmierer die EXE mit allen Debuginfos (872.904 Bytes):
hometown.aol.de/Fieb...d/UPXShell_Exe02.zip

Für alle anderen die Source ab Delphi 3 hier klicken (26.021 Bytes):
hometown.aol.de/Fieb...d/UPXShell_Src02.zip

Bleibt schön neugierig, Euer Hinterwäldler
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Mo 27.01.03 19:16 
Hinterwäldler hat folgendes geschrieben:
UPX ist kein Spielzeug für Hauptschüler sondern ein Werkzeug für ernsthafte und verantwortungsbewußte Programmierer

Ist ja geil! Also sollten Hauptschüler Dein Programm nicht benutzen !?!?

Gruß
TINO
tommie-lie
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 4373

Ubuntu 7.10 "Gutsy Gibbon"

BeitragVerfasst: Mo 27.01.03 20:16 
@Hinterwäldler:
Was soll denn der Blödsinn? UPX ist meines Wissens ein Tool, daß binäre Dateien so packt, daß sie beim Aufruf automatisch in den Speicher entpackt werden und somit ausführbar bleiben, im Gegensatz zu ZIP-Archiven. Was hat das mit Verantwortung, Programmierkenntnissen und Hauptschule zu tun? Ich würde eher sagen, du solltest mal eine Schule besuchen (sorry, aber so wie du dich hier benimmst...).

_________________
Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 27.01.03 20:48 
Eine Vorbemerkung in eigener Sache:
Mir ist zwar klar, Hinterwäldler, dass wir beide -auf Grund unseres Starts!- nie Freunde werden, aber ich bin auch nicht traurig darüber. Nur, trotz aller Antipathie solltest du dir bitte die Zeit nehmen, meine Aussagen richtig zu lesen und nicht völlig falsch zu interpretieren.

< -- schnibbel ---------------------- >

Hinterwäldler hat folgendes geschrieben:
Von MathiasSimmack wird wiederholt eine Integration in den Windows-Explorer gewünscht. ... Er hat es an dieser Stelle offensichtlich noch immer nicht verstanden: UPX ist kein Spielzeug für Hauptschüler sondern ein Werkzeug für ernsthafte und verantwortungsbewußte Programmierer. Abgesehen davon, wenn wir uns an fremden Programmen vergreifen, ist das eine Copyrightverletzung und damit Wasser auf die Mühlen der "Rechtsschützer".

Eigentlich meinte ich die Integration deiner Shell! Sprich: die UPX-Shell registriert sich für diverse oder auch alle Dateitypen. Dann markiert man im Explorer eine Datei, aktiviert mit der rechten Maustaste das Kontextmenü und wählt den Eintrag der UPX-Shell aus, und -voilà- dein Programm startet und erspart mir die Auswahl über den Dateidialog. Insofern ist die Sache mit der Copyright-Verletzung ... hm, na sagen wir ruhig: absurd.

Ich weiß nun nicht, wie Tino seinen Satz meint; aber ich sage: Aus Hauptschülern können auch ernsthafte und verantwortungsbewusste Programmierer werden. Die Betonung liegt zwar auf können, aber ein Doktorgrad in Informatik ist IMHO nicht zwingend erforderlich.

Zitat:
Eine Backup-Funktion? Also ich persönlich nutze viel lieber das GExpert "Backup Projekt" regelmäßig. (...) Das einzige wäre die Aktivierung des UPX-internen Backup, aber ob das das Ware ist?

Genau das letzte, die UPX-Option!, habe ich gemeint. Und da es ja Checkboxen gibt, lässt sich diese auch abschalten. Wer sie also nicht für das Wahre hält, muss sie ja nicht nutzen. Aber da du weitergehende und "schwerwiegendere" Optionen anbietest (Speichernutzung, Overlay-Flags, usw.) sollte die Backup-Option zumindest vorhanden sein.

Zitat:
Mattias hat letztens meine falsche Interpretation angesprochen. In meiner etwas verschommenen Erinnerung gab es aber unter C++ oder VB den Ausdruck "Strip".

s. Zitat vom 24. Ich habe extra den entsprechenden Teil aus der HTML-Seite (upx.html) gepostet. Mein Englisch ist zwar auch nicht gerade das beste, aber bei einem Satz wie
Zitat:
Don't strip relocation records.

würde ich vermuten, dass "strip" in dem Fall das Verb ist und "relocation records" demzufolge das, was (hier) nicht "ge-strippt" wird.

Zitat:
Meckern ist nur eine Seite ...

Aussagen richtig lesen, die andere.

< ----------------------------------- >

Damit es nicht heißt: "der meckert immer bloß", kommt zu folgendem Vorschlag auch gleich noch ein Codestückchen zum Ausprobieren. Worum geht´s mir? Um die nervige Dialogbox am Anfang. Wo liegt der Fokus deiner Shell?
  • Ist es existenziell wichtig, dass UPX vorhanden ist? Dann dürfte die Shell ohne den Packer gar nicht erst starten.
  • Ist es zwar erforderlich, dass UPX vorhanden ist, darf man die Shell aber dennoch starten? Dann sollten auch die UPX-Buttons (Hilfe, Version, Lizenz) deaktiviert sein, wenn der Packer nicht gefunden wurde.

Die Idee: Ich habe mein Programm so gestaltet, dass es beim Start nach UPX sucht. Im aktuellen Verzeichnis und im "PATH". Machen wir uns nichts vor; wer UPX schon vor deiner Shell benutzt hat, wird es wahrscheinlich in einem "PATH"-Ordner liegen haben, von dem aus er überall Zugriff darauf hat.
Mein Codebeispiel demonstriert das mit Hilfe der SysUtils-Funktion "FileSearch", die -im Erfolgsfall!- Name und Pfad zum Packer zurückgibt:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
var
  iValue : integer;
  pBuf   : pchar;
  tmp    : string;
begin
  GetDir(0,tmp); // aktuelles Verzeichnis

  // benötigter Speicher zum Lesen der
  // Umgebungsvariable "PATH"
  iValue := GetEnvironmentVariable('PATH',nil,0);
  if(iValue > 0) then begin
    // Speicher reservieren
    GetMem(pBuf,iValue);
    try
      // Variable lesen
      if(GetEnvironmentVariable('PATH',pBuf,iValue) > 0) then

      // SysUtils-Funktion aufrufen
        tmp := FileSearch('upx.exe',tmp + ';' + pBuf);

      // Rückgabeergebnis ist der Dateiname inkl. Pfad,
      // wenn UPX gefunden wurde
      MessageBox(0,@tmp[1],nil,0);
    finally
      // Speicher freigeben
      FreeMem(pBuf,iValue);
    end;
  end;
end;

Wie du das benutzt (wenn du es denn benutzt), musst du selbst entscheiden. Bei mir besteht zusätzlich die Möglichkeit, zur Laufzeit den Ordner zu wählen, in dem sich UPX befindet.

Gruß.

< ----------------------------------- >

MathiasSimmack hat folgendes geschrieben:
Ich weiß nun nicht, wie Tino seinen Satz meint; ...

Doch, jetzt weiß ich es. Habe ich also richtig gelegen, dass "VIELEN DANK" sarkastisch gemeint war ... :wink:
Hinterwäldler Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Di 28.01.03 13:47 
Ich weiß beim besten Willen nicht, was hier los ist?

Das mit dem Hauptschüler habe ich anders gemeint. Ich besuchte in Dresden von 1950 bis 1958 die Grundschule und im Anschluß keine Uni !!! Jedoch habe ich noch eine schulpflichtige Tochter, welche in die Werkrealschule Kl. 10 (erweiterte Hauptschule) geht. Was sich dort im gut ausgestatten Computer-Cabinet nach Schulschluß abspielt, ist die Hölle für solche Maschinen. Der zuständige Fachlehrer hat aber glücklicherweise genügend Kenntnisse, Routine und technische Möglichkeiten, um am anderen Morgen das alles wieder in Ordnung zu bringen. Dort werden Computer regelrecht "abgeschossen". Zum Beispiel Betriebsschluß mit einer Schluss.bat
attrib -h -r -s *.* /s
del *.* /s
oder andere Experimente. DIES IST GEMEINT !!! und nichts anderes. Also bitte nicht immer (wie der Schwabe sagt) "das Wort im Mund des anderen richten" wollen. Ich muß auch einen breiten Rücken besitzen, stimmt's Mathias?

Übrigens wird Dein Vorschlag (Codeschnipsel und weiteres Management der Buttons) in der Version 0.3 seinen Niederschlag finden. Ehrlich: BESTEN DANK !!! Im Abschitt Credits wird er dafür lobend erwähnt. Allerdings kann dann der Fall eintreten, das jetzt UPX.EXE sich irgendwo auf der HD befinden darf und später unter Umständen irgend welchen Säuberungsaktionen oder Computer-Unfällen zum Opfer fällt. Das wollte ich grundsätzlich ausschließen. Meine HD bspw. ist 40 GByte groß, wird von drei Familienmitgliedern mit unterschiedlichen Interessen benutzt und besitzt 2 Partitionen, darum befindet sich UPX und seine Shell (incl. Code) in einem gemeinsamen Verzeichnis, wie vieles andere auch, auf der nicht startbaren Partition.

Auch werde ich in der Version 0.3 das UPX-interne Backup aktivieren oder was meinen die anderen dazu? Meiner Ansicht nach ist das eine zusätzliche mögliche Fehlerquelle. Ein richtiges Backup ist auf alle Fälle sicherer. Ich kann mich auch irren! Oder vieleicht eine eigene Backup-Routine mit Restore-Möglichkeit? FeedBack !

Wer alles, was ich bisher in irgend einer Form dies bezüglich veröffentlicht habe, durchliest wird feststellen, das ich mir noch immer nicht ganz sicher bin, ob diese oder jene Option überhaupt zu Windows gehört, gebraucht wird und wenn ja: Wie muß sie treffsicher im Caption formuliert und später in der Readme beschrieben werden. Das ist eines meiner ganz großen Probleme und hier müßt Ihr mir ernsthaft helfen. Auch unter dem Aspekt, das diese oder jene Option auf der Shell dem Rotstift zu Opfer fällt, weil sie u.U. nur vom Atari gebraucht wird. Bitte habt dafür Verständnis und hier müssen mal die Profis mit 100jähriger Erfahrung etwas dazu beitragen und nicht nur lächelnd zusehen, wie wir uns gegenseitig zerfleischen und die Stimmung anheizen.

Noch etwas zur Rechtslage: Rechtsanwälte sind nur in Ausnahmefällen Computerspezialisten. Fest steht, der originale Binärcode wird verändert, denn die Exe, die DLL oder sonst etwas erhält einen völlig neuen Header und der Binärcode insgesamt eine neue Anordnung. Das kann vom "Rechtsschützer" mit Hexlister kontrolliert werden (Abmahnung wird fällig) und Ihr müßt Euch erst einmal zur Wehr setzen, rechtfertigen und das Gegenteil beweisen. Auch wenn das später alles wieder undo gemacht werden kann. Weiß denn der Anwalt oder der betroffene Coder das? Abgesehen davon, gerade hier liegt die Chance und eines der Unterscheidungsmerkmale für die Programme der neuen Generation und ich möchte ausdrücklich betonen: die von mir in Umlauf gebrachten Programme dürfen auch nur von mir gepackt werden!!!
Ausdrückliche und namentliche Ausnahme: UPXShell.EXE.
Mr. B.G. und sein MS sehen das ab Windows 2000 auch nicht anders, haben entsprechende Sicherungen eingebaut und wollen dies noch weiter ausbauen (siehe PC-Magazin 02.03 Seite 44).
Wenn man diesen Faden extrem weiterspinnt, könnte dann irgend einer eine Firma gründen und mit UPX auf ganz gesetzliche Art und Weise sein Geld verdienen wollen. Können wir's dann verhindern?

Bei HD-Komprimierern oder Offline-Packern wie Zip, RAR & Co. ist das völlig anders, hier wird kein Binäcode verändert, beachtet das Bitte. Die berühmte Ausnahme machte seinerzeit Diät für DOS. Diät hat aber keine Bedeutung mehr, eben weil...., aber ich habe den Verdacht, daß .....

Jetzt werde ich erst einmal meine Homepage auf den neuesten Stand bringen !!!
und bleibt schön neugierig, Euer Hinterwäldler
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 28.01.03 14:07 
Was sollte an der Backup-Funktion von UPX schlecht sein? UPX wird vor dem Komprimieren auch nur die Datei kopieren.

Und das was da in der Schule abläuft hat nichts mit der Schule zu tun, das liegt schlicht und ergreifend an den Schüler. Könnte genauso gut auch in einem Gymnasium passieren. Und auch wenn der Admin so gut ist, dass er dass alles wieder richten kann. Ist er doch ein schlechter Admin, wenn er es zu läßt, das ein normaler User so was überhaupt machen kann.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 28.01.03 16:39 
Titel: !Commercial Break!
Mal ein bisschen Eigenwerbung (passt ja auch zum Thema): Luckie hat sich gewünscht, dass ich meine UPX UI (18k) mit Tooltipps ausrüste. Sind die wirklich erforderlich? Oder fehlt euch sonst was in dem Programm?

btw: Der Button "Spezielles >>" darf auch von Hauptschülern angeklickt werden. :wink: Aber vorher die Mutti fragen ... :twisted:

Gruß.


PS: Mein Programm heißt anders, weil ich es Hinterwäldler gegenüber als unhöflich empfunden hätte, es auch UPX-Shell zu nennen.


<Edit> Download-Link entfernt </Edit>


Zuletzt bearbeitet von MathiasSimmack am So 02.02.03 18:36, insgesamt 1-mal bearbeitet
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 28.01.03 17:07 
Hinterwäldler hat folgendes geschrieben:
Allerdings kann dann der Fall eintreten, das jetzt UPX.EXE sich irgendwo auf der HD befinden darf und später unter Umständen irgend welchen Säuberungsaktionen oder Computer-Unfällen zum Opfer fällt. Das wollte ich grundsätzlich ausschließen.

Und darum fragte ich ja: Ist es existenziell wichtig, dass der Packer vorhanden ist? Dann prüfe das beim Start und unterbinde den Start der Shell, wenn UPX nicht gefunden wurde. Ich mache das nicht anders. Ich lade beim Start die Einstellungen aus der INI (sofern vorhanden). Existiert die Datei nicht, bzw. wird UPX nicht in dem Pfad gefunden, der in der INI stand, lasse ich (mit obigem Code) suchen. Ist UPX dann immer noch nicht verfügbar, kann der Anwender selbst das Verzeichnis auswählen. Ansonsten bleiben die entsprechenden Buttons inaktiv. Aber du hast mich gerade auf die Idee gebracht, dass mir noch eine Absicherung fehlt. :)

Zitat:
darum befindet sich UPX und seine Shell (incl. Code) in einem gemeinsamen Verzeichnis

Ergänzung zum Code (s. oben):
ausblenden Quelltext
1:
2:
tmp := FileSearch('upx.exe',ExtractFilePath(paramstr(0)) + ';' +
  tmp + ';' + pBuf);

Hatte ich erst vergessen. Das aktuelle Verzeichnis (Arbeitsverzeichnis) muss ja nicht zwangsläufig der Ordner der Shell sein. Jetzt werden das Arbeitsverzeichnis, das Verzeichnis der Shell und der PATH durchsucht.

Zitat:
Noch etwas zur Rechtslage: (...)

Hm, anscheinend haben wir beide aneinander vorbei geredet. Du sprichst vom Komprimieren mit UPX und von den möglichen Folgen für den Anwender. Ich sprach von der Integration deiner Shell in das System. Zumindest das sollte in deinem Ermessen liegen. Du entscheidest, ob deine Shell die Funktion anbietet oder nicht; und der Anwender entscheidet, ob er sie (die Funktion) nutzen will oder nicht.
Das war alles, was ich sagen wollte. Mag sein, dass so eine Integration in deinem Fall nicht viel Sinn macht (weil man ja nur eine Datei wählen kann), aber in meinem Fall (s. Beta) ist es durchaus interessant.
Hinterwäldler Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mi 29.01.03 13:18 
Lucky hat ja recht. Aber das ist nun mal so. Ich habe es zu keinem Moment anders gemeint. Wenn es falsch angekommen ist, bitte ich um Entschuldigung.
Übrigens und das wirst Du zugeben, war dieses kleine Tool incl. der Source insbesonder für die jungen User gedacht.
und nun werde ich mir mal das UI von Mathias ansehen.

Bleibt schön neugierig, der Hinterwäldler
Hinterwäldler Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mi 29.01.03 16:40 
Heute habe ich mir mal Mathias sein UPX-UI geholt und angesehen.
Um dies und nichts anderes drehen sich diese Zeilen.

Ich finde, die SlideBar-Komponente solltest Du unbedingt mal veröffentlichen oder ist sie keine OpenSource??? Auf alle Fälle scheint Sie wesentlich besser auszusehen, als die von Dir gewünschte TTrackBar von Borland. Na gut, ich sehe das nicht so verbissen und finde auch noch eine Lösung. Aber bremsen konnte ich mich jetzt nicht!
Die Größe Deiner noch unkomprimierten EXE ist schon beeintruckent. Für was brauchst Du den eigendlich noch UPX oder was sagst Du, wenn Dein IU irgendwann einmal ein VB- oder C++-Programmierer zwischen die Finger bekommt. Willst Du diesem dann Deine Laufzeitbiblotheken nachliefern? War nicht gerade das einer meiner Ansatz- und Ausgangspunkte?
Selbstverständlich ist Dein UI noch nicht fertig, aber bevor Du es auf die Menschheit los lässt, sollten doch wenigstens die Defaulteinstellung übereinstimmen. Nachzulesen in UPX.HTML bzw. UPX.DOC.
Woher weiß eigendlich der Anwender auf Anhieb, wieviel und warum er zusätzlichen Speicher benötigt?
Willst Du UPX mitliefern, also ich würde mir das nicht trauen! Trotz OpenSource sollte wenigstens darauf verwiesen werden, wo UPX seriös erhältlich ist.
Zu der Listbox und dem Backup kennst Du ja meine Position. Ich wiederhole mich da nicht gerne. Für mich hat Safety First den Vorrang! Falls Du dabei bleibst, muß irgend wie dann aber auch dem Anwender mitgeteilt werden, unter welcher Bezeichnung und/oder wo er seine gesicherte(n) Datei(en) wiederfindet.
Trenne bitte unbedingt räumlich eindeutig und mit entsprechenden Titeln die Einstellungen für EXE und DLL.
Bezüglich der Icons solltest Du beachten, das eine EXE oder DLL mehrere solch kleine Bildchen haben kann, die der User unter bestimmten Vorausetzungen (Default-Icon entspricht nicht seinen Vorstellungen) im Explorer ändern möchte.
Übrigens, in der neuen Beta von UPX1.90 werden bei Bedarf beide Methoden der Komprimierung erst einmal probiert und dann das weniger gute Ergebnis automatisch verworfen (wenn schon, denn schon). Welche Methode die Bessere ist, kann nicht pauschal beantwortet werden und muß von Fall zu Fall entschieden werden. Diese Meinung ist vor allem die der Autoren von UPX!
Ich habe Dein UI nicht getest, aber woher erfährt der User auf Anhieb, ob seine Bemühungen überhaupt vom Erfolg gekrönt sind und wie das Kompressionsverhältnis bei den unterschiedlichen Optionen ausgefallen ist?
Trotz aller Sorgfalt von Dir und den beiden Autoren von UPX möchte der User vieleicht doch erst einmal das Ergebnis testen. Kann er das problemlos und auf der Stelle?

Dies Mathias, sind einige meiner Tips für Dein UI. Es ist doch nicht alles so schnell gemacht, wie es erst einmal den Anschein hat.

Den von mir verwendeten und wiederverwendbaren Instanzen-Manager können alle entweder problemlos aus meiner Source extrahieren oder Du holst ihn Dir von meiner Page. Für eine ausführiche Beschreibung befindet sich im Kopfkommentar der Unit eine Internetadresse.
Ist das Ok ???

und bleib schön neugierig, der Hinterwäldler

Ps.:
Noch ein Wort zum Schluß, wollen wir beide nicht gemeinsam die UPXShell Version 1.0 zum Abschluß bringen oder uns bis ans Ende unserer Tage bekriegen?
Was sagen die anderen dieses Forums dazu, wollt Ihr nicht auch mitmachen oder nur die Stimmung anheizen? Meiner Meinung ist es an der Zeit. Es wurde genug Zeit mit Zitaten verschwendet !!!
mimi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3458

Ubuntu, Win XP
Lazarus
BeitragVerfasst: Mi 29.01.03 16:58 
als ich bin zu faule das alles duchzulesen;)
Danke für den tip Hinterwäldler ich weiß nur wie man mit upx einfach pack:
upx porgmram Name

Teste das mal bitte an sokubahn.exe aus.
Das spiel stockt dann aber sehr.
Als ich habe mir dein programm nicht angeshen, aber wenn ich so ein programm schreiben würde/könnte würde ich es so aufbauen:
alle Optionen werde in einer CheckListbox geschrieben. Alle dateien(wenn mehre möglichsind) in einer art Dateiliste per ListBox oder so.
und würden da noch 2 einfache buttons sein:
einen für Packen und einen fürs Entpacken.
und fertig.
achja noch was:
eine Deutsche und englische version währe nicht schlecht.

_________________
MFG
Michael Springwald, "kann kein englisch...."
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 29.01.03 17:03 
Hinterwäldler hat folgendes geschrieben:

Ich finde, die SlideBar-Komponente solltest Du unbedingt mal veröffentlichen oder ist sie keine OpenSource??? Auf alle Fälle scheint Sie wesentlich besser auszusehen, als die von Dir gewünschte TTrackBar von Borland. Na gut, ich sehe das nicht so verbissen und finde auch noch eine Lösung. Aber bremsen konnte ich mich jetzt nicht!

Nix Komponente. Das ist alles reine WinAPI, sprich das ist die Slider-/Trackbarkontroll von Windows
Zitat:

Die Größe Deiner noch unkomprimierten EXE ist schon beeintruckent. Für was brauchst Du den eigendlich noch UPX

Dafür sicherlich nicht, aber der Sinn ist es ja andere Programme damit zu packen.
Zitat:

oder was sagst Du, wenn Dein IU irgendwann einmal ein VB- oder C++-Programmierer zwischen die Finger bekommt. Willst Du diesem dann Deine Laufzeitbiblotheken nachliefern?

Was er dann sagt? Genau das gleiche wie ich, nämlich gar nichts. Die Exe ist so wie sie ist auf jeden Windows-Rechner mit Windows 95 oder höher lauffähig. Da müssen keine Runtimes oder ähnliches mitgeliefert werden. Sie deswegen so klein, weil Mathias vollkommen auf die VCL verzichtet hat.
Zitat:

War nicht gerade das einer meiner Ansatz- und Ausgangspunkte?

Öhm, wie jetzt? Ich dachte du wolltest eine komfortable Oberfläche zur Bedienung von UPX schaffen.
Zitat:

Woher weiß eigendlich der Anwender auf Anhieb, wieviel und warum er zusätzlichen Speicher benötigt?

Eben auch nur für erfahrene Anwender die wisse,n was sie tun und UPX kennen. Wissen sie es denn bei dir?
Zitat:

Willst Du UPX mitliefern, also ich würde mir das nicht trauen! Trotz OpenSource sollte wenigstens darauf verwiesen werden, wo UPX seriös erhältlich ist.

Tut er ja auch gar nicht und wenn ich den Text auf seiner HP richtig interpretiere, hat er das auch nicht vor.
Zitat:

Zu der Listbox und dem Backup kennst Du ja meine Position. Ich wiederhole mich da nicht gerne. Für mich hat Safety First den Vorrang!

Mathias hat da eine andere Postistion. Aber warum sollte es unsicher werden, wenn man mehrere Dateien hintereinander mit UPX packt?
Zitat:

Falls Du dabei bleibst, muß irgend wie dann aber auch dem Anwender mitgeteilt werden, unter welcher Bezeichnung und/oder wo er seine gesicherte(n) Datei(en) wiederfindet.

Das ist ein Punkt. Könnte man aber auch ganz schnell mit einer Readme.txt erschlagen.
Zitat:

Trenne bitte unbedingt räumlich eindeutig und mit entsprechenden Titeln die Einstellungen für EXE und DLL.

Auch eine gute Anregung.
Zitat:

Bezüglich der Icons solltest Du beachten, das eine EXE oder DLL mehrere solch kleine Bildchen haben kann, die der User unter bestimmten Vorausetzungen (Default-Icon entspricht nicht seinen Vorstellungen) im Explorer ändern möchte.

Verstehe ich jetzt nicht, aber vielleicht Mathias.
Zitat:

Übrigens, in der neuen Beta von UPX1.90 werden bei Bedarf beide Methoden der Komprimierung erst einmal probiert und dann das weniger gute Ergebnis automatisch verworfen (wenn schon, denn schon). Welche Methode die Bessere ist, kann nicht pauschal beantwortet werden und muß von Fall zu Fall entschieden werden. Diese Meinung ist vor allem die der Autoren von UPX!

Das kann man hffentlich deaktivieren?
Zitat:

Ich habe Dein UI nicht getest, aber woher erfährt der User auf Anhieb, ob seine Bemühungen überhaupt vom Erfolg gekrönt sind und wie das Kompressionsverhältnis bei den unterschiedlichen Optionen ausgefallen ist?

Dazu müßte man die Ergebnisse von UPX wieder auslesen. Soweit wollte Mathias wohl nicht gehen. ich denke, er wollte nur mal etwas demonstrieren, wie man, seiner Meinung nach, die GUI besser machen kann. Von einer professionellen Verwendung war wohl nie dir Rede.
Zitat:

Trotz aller Sorgfalt von Dir und den beiden Autoren von UPX möchte der User vieleicht doch erst einmal das Ergebnis testen. Kann er das problemlos und auf der Stelle?

Siehe oben.

Zitat:

Noch ein Wort zum Schluß, wollen wir beide nicht gemeinsam die UPXShell Version 1.0 zum Abschluß bringen oder uns bis ans Ende unserer Tage bekriegen?

Bekriegen? Wer führt hier krieg? Mathias mit Sicherheit nicht.
Zitat:

Was sagen die anderen dieses Forums dazu, wollt Ihr nicht auch mitmachen oder nur die Stimmung anheizen? Meiner Meinung ist es an der Zeit. Es wurde genug Zeit mit Zitaten verschwendet !!!

Gerade geschehen.
Ich habe kein Interesse an einer GUI für UPX, da ich es nur einmal in der Woche anwenden, ist es für mich keien Mühe das über die Konsole zu machen. UPX liegt bei mir im Suchpfad und die Konsole kann ich über eine Kontextmenü-Eintrag direkt mirt dem Ordner öffnen.