Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programmgröße (https://www.delphipraxis.net/56241-programmgroesse.html)

N47R0N 2. Nov 2005 18:04


Programmgröße
 
hi @ all

Also ich arbeite schon seit langem an einem Programm nu habe ich es endlich fertig ^^

mein einziges problem es ist mir zu groß gibt es eine möglichkeit auser kompremieren mit anderen tools die exe kleiner zu machen?

das teil soll einfach schlanker werden

danke für jede hilfe

100nF 2. Nov 2005 18:06

Re: Programmgröße
 
hi,

hast du denn noch irgendwelche ressourcen angehängt?
wenn ja, müsstest du diese extern abspeichern.

gruss
urbanbruhin

ripper8472 2. Nov 2005 18:08

Re: Programmgröße
 
UPX

Khabarakh 2. Nov 2005 18:08

Re: Programmgröße
 
Schreibe es neu, diesmal als NonVCL-Programm. Außerdem solltest du .bmps vermeiden :wink: .

Sharky 2. Nov 2005 18:12

Re: Programmgröße
 
Zitat:

Zitat von Khabarakh
Schreibe es neu, diesmal als NonVCL-Programm. Außerdem solltest du .bmps vermeiden :wink: .

Ich weiss nicht warum alle denken das NonVCL die Lösung dafür ist jedes Programm kleiner zu machen. ;-)
Zitat:

Zitat von ripper8472
UPX

Über die Verwendung von UPX wurde in der DP schon viel diskutiert. Sucht mal nach den Threads zu diesem Thema ;-)

Zitat:

Zitat von N47R0N
...an einem Programm ...
ist mir zu groß ...

Hai N47RON,

sage doch mal was das Programm macht und wie groß es zur Zeit ist (die Exe) ohne diese Infos ist es schwer etwas sagen zu können.

N47R0N 2. Nov 2005 18:22

Re: Programmgröße
 
ist sone art ICQ Pager ( man kann damit auch ICQ Nachrichten versenden )

soooo lnage sitze ich da ja auch net drann n paar tage ^^
das teil ist 390KBs groß und es sind keine bilder drinne nur
ein paar buttons ne memo und etwas code

wollt eigendlich nur wisen wie man programme allgemein verkleinert

kingflo 2. Nov 2005 18:27

Re: Programmgröße
 
390 KB? das ist doch gar net so schlimm oder?
Also mit UPX bekommst du es zwar kleiner, aber genau so klein bekommst du es auch, wenn du es einfach in eine zip file bringst.

Sonst würde ich an deiner stelle mal versuchen einige Memos usw zur Laufzeit zu erstellen.

Stanlay Hanks 2. Nov 2005 18:28

Re: Programmgröße
 
Zitat:

Zitat von N47R0N
das teil ist 390KBs groß

So groß ist das für ein Delphi Programm gar nicht ;)

N47R0N 2. Nov 2005 18:46

Re: Programmgröße
 
ich weiß nur ich wollte das ma wissen wie weit man die exe verkleinern kann

Khabarakh 2. Nov 2005 18:50

Re: Programmgröße
 
Wenn mann ein neues Projekt erstellt und es sofort kompiliert, ist die Echse 370 KB groß. Wenn du also die VCL drinbehalten willst, wirst du nicht mehr viel einsparen können (es sei denn, du verwendest Laufzeit-Packages :wink: ).

Stanlay Hanks 2. Nov 2005 18:50

Re: Programmgröße
 
Hi. Schmeiß mal aus "Uses" alle nicht benötigten Units raus. Welche du brauchst, merkst du, wenn er nicht mehr kompiliert ;)

N47R0N 2. Nov 2005 18:54

Re: Programmgröße
 
:-D geiles ausschlussverfahren, werds gleich ma testen.

weis jemand zufällig welche sachen nicht benutzt werden müssen wenn man
in einem neuen project drin ist?

3_of_8 2. Nov 2005 18:57

Re: Programmgröße
 
Variants zum Beispiel braucht man so gut wie nie, aber viel sparst du damit nicht ein.

Rastaman 2. Nov 2005 18:59

Re: Programmgröße
 
Bei nem ganz neuen VCL-Projekt brauchst du nur die Forms - Unit.

Union 2. Nov 2005 19:01

Re: Programmgröße
 
Dieses Tool Peganza - Icarus sagt Dir, welche units nicht gebraucht werden.

Khabarakh 2. Nov 2005 19:03

Re: Programmgröße
 
Und dort alle anderen zu entfernen spart genau 0 KB ein :wink: .

turboPASCAL 2. Nov 2005 19:19

Re: Programmgröße
 
Beim D2005 Compiler bist du bei einer VCL-Anwendung mit ca. 370 KB dabei, mal angenommen das Project hat eine Form, 1 Button, 1 Editfeld und 1 Memo.
Mit einer NonVCL -Anwendung kommt man da auf ca. 25 KB.

N47R0N 2. Nov 2005 19:28

Re: Programmgröße
 
danke.
hab das teil jetzt mit UPX auf 190KBs gebracht,
will mich nu mal an die packeges ranmachen was kann man damit alles machen?

Rastaman 2. Nov 2005 19:58

Re: Programmgröße
 
Zitat:

Zitat von turboPASCAL
Mit einer NonVCL -Anwendung kommt man da auf ca. 25 KB.

[klugscheiss]Ich würd eher 14,5 bzw 15 kb sagen :mrgreen: [/klugscheiss]
Zitat:

Zitat von N47R0N
will mich nu mal an die packeges ranmachen was kann man damit alles machen?

Also die exe ist dann zwar nur noch 15 kb oder so, allerdings musst du .dll (?) Dateien mit dem Programm mitliefern, ohne die es nicht läuft. Visual Basic Style halt ;)

Daniel G 2. Nov 2005 22:47

Re: Programmgröße
 
Zitat:

Zitat von Rastaman
Zitat:

Zitat von turboPASCAL
Mit einer NonVCL -Anwendung kommt man da auf ca. 25 KB.

[klugscheiss]Ich würd eher 14,5 bzw 15 kb sagen :mrgreen: [/klugscheiss]

Wie machste das? Irgendwie sind NON-VCL Programme bei D2005 PE ziemlich groß bei mir...

@N47RON: Sharky hat dir ja bereits etwas zum Thema UPX nahegelegt. Ich rate davon übrigens auch ab. UPX kann nicht besser sein als die Datei in ein normales ZIP - File zu packen. Und wenn die Programm bei so wenig Controls klein sein sollen, dann nimm halt NON - VCL.... Alles andere ist sonst Jacke wie Hose

himitsu 2. Nov 2005 23:36

Re: Programmgröße
 
Zitat:

Zitat von Khabarakh
Und dort alle anderen zu entfernen spart genau 0 KB ein :wink: .

Wie kommst'n darauf?

Es gibt einige Units, die nicht benötigt werden, welche aber dennoch im Initializations-/Finalizationsabschitt einiges veranstalten ... also welche Code einfügen, welcher eigentlich nicht benutzt wird ... demnach kann man unter Umständen also doch etwas einsparen ;)

x000x 3. Nov 2005 00:00

Re: Programmgröße
 
Moin moin,

KOL

Khabarakh 3. Nov 2005 08:58

Re: Programmgröße
 
Zitat:

Zitat von himitsu
Zitat:

Zitat von Khabarakh
Und dort alle anderen zu entfernen spart genau 0 KB ein :wink: .

Wie kommst'n darauf?

Es gibt einige Units, die nicht benötigt werden, welche aber dennoch im Initializations-/Finalizationsabschitt einiges veranstalten ... also welche Code einfügen, welcher eigentlich nicht benutzt wird ... demnach kann man unter Umständen also doch etwas einsparen ;)

Das war auf das Standardprojekt bezogen, Unions Post hat sich irgendwie noch dazwischen geschoben :| .

turboPASCAL 3. Nov 2005 10:00

Re: Programmgröße
 
Zitat:

Zitat von Daniel G
Zitat:

Zitat von Rastaman
Zitat:

Zitat von turboPASCAL
Mit einer NonVCL -Anwendung kommt man da auf ca. 25 KB.

[klugscheiss]Ich würd eher 14,5 bzw 15 kb sagen :mrgreen: [/klugscheiss]

Wie machste das? Irgendwie sind NON-VCL Programme bei D2005 PE ziemlich groß bei mir...

Jup, das ist richtig dass D2005 eine recht grosse NonVCL-Exe erstellt. Der Compiler packt in die Exe ein paar Stringtabellen rein und wohl auch noch einige andere Sachen. Selbst wenn in den Optionen vom Compiler & Linker alles abgewählt wird...
Meine Test-App. compiliert mit D6 es bringt es auf 54 KB, bei D2005 auf 104 KB. :gruebel:
Eine Konsolenanwendung also nix im Quellcode
Delphi-Quellcode:
program NonVCL;

{$APPTYPE CONSOLE}

uses
  Windows;

begin
end.
kommt mit D6 auf 8 KB (ohne SysUtils, mit sind es 38 KB) und D2005 macht daraus 14 KB (ohne SysUtils, mit sind es 38,5 KB)

kingflo 3. Nov 2005 11:53

Re: Programmgröße
 
Ein Programm muss Groß sein damit die Leute denken, dass da auch viel drin steckt :lol:
ne war nur spaß ich würde es an deiner stelle nur NonVCL machen und auch UPX weglassen.

mumu 3. Nov 2005 11:56

Re: Programmgröße
 
was ist das problem an 400 kb würde mich mal interessieren. warum auf die komfortable VCL verzichten? wegen 350 kb

Aenogym 3. Nov 2005 11:58

Re: Programmgröße
 
Zitat:

Zitat von mumu
was ist das problem an 400 kb würde mich mal interessieren. warum auf die komfortable VCL verzichten? wegen 350 kb

vielleicht, weil nicht jeder eine dsl-flatrate hat?
es gibt noch genügend modem- und isdn-nutzer.

mumu 3. Nov 2005 12:00

Re: Programmgröße
 
naja, aber deswegen ne applikation umschreiben, weil der download dann 10 sec (wenn überhaupt) kürzer dauert.

kingflo 3. Nov 2005 12:13

Re: Programmgröße
 
Im prinzip ist es immer besser das Programm so klein wie möglich zu halten, und auch früh genug damit anzufangen, falls man es mal weiter ausbaut und ruck zuck hat man dann mit zu viel VCL seine 2 MB im Prog.

Und mal erhlich wenn du zwei Programme im Netz findest, die genau das gleiche können und das eine ist 30 KB groß und das andere 500 KB welches würdest du wohl ziehen?? :wink:

Hinzu kommt auch noch, das man ja nicht immer unbegrenzt traffic auf seinem webspace hat und wenn man dann Programme zum Download anbieten möchte ist es auch umso kleiner desto besser.

tigerman33 3. Nov 2005 20:37

Re: Programmgröße
 
Im Gegensatz zu dem Aufwand, mich um Messaging, Initialisierung und den ganzen anderen WAPI Kram zu kümmern, nehm ich die 500kb gern in Kauf.
Wenn ich programmier, will ich mich um die Konzepte kümmern, die ich umsetze, und mich nicht mit den Low-level Funktionalitäten rumschlagen.

Hansa 3. Nov 2005 20:50

Re: Programmgröße
 
Zitat:

Zitat von kingflo
...so klein wie möglich zu halten, und auch früh genug damit anzufangen, falls man es mal weiter ausbaut und ruck zuck hat man dann mit zu viel VCL seine 2 MB im Prog.

Du vergisst einen wichtigen Punkt : einmal VCL, immer VCL !! Für kleine Tools läßt sich die VCL vielleicht aussparen, für eine größere Sache aber nicht. Und das in Zeiten von 30 Cent / GB und DSL. Da sitzen bei Borland ein Haufen Leute und programmieren was, was nützlich ist und dann wird das dann noch eingespart. Wer soll das verstehen, wo die WinApi auch gerade dabei ist, sich zu verabschieden ? Programme, die einen solchen Weg gehen, die verschrottet man besser heute als morgen. 8)

BlackJack 3. Nov 2005 20:53

Re: Programmgröße
 
Zitat:

Zitat von tigerman33
Im Gegensatz zu dem Aufwand, mich um Messaging, Initialisierung und den ganzen anderen WAPI Kram zu kümmern, nehm ich die 500kb gern in Kauf.
Wenn ich programmier, will ich mich um die Konzepte kümmern, die ich umsetze, und mich nicht mit den Low-level Funktionalitäten rumschlagen.

Da kann ich dem Tiger-Mann nur zustimmen.
sonst kann man ja direkt C schreiben ;-)

Daniel G 3. Nov 2005 21:39

Re: Programmgröße
 
Zitat:

Zitat von Hansa
Programme, die einen solchen Weg gehen, die verschrottet man besser heute als morgen. 8)

Nö, seh ich überhaupt nicht so.

Wenn man nur 1 Gigabyte Traffic für seine Homepage inklusive hat, macht sich der Unterschied zwischen 30k und 350k schon bemerkbar...

Der_Unwissende 3. Nov 2005 21:48

Re: Programmgröße
 
Zitat:

Zitat von Aenogym
vielleicht, weil nicht jeder eine dsl-flatrate hat?
es gibt noch genügend modem- und isdn-nutzer.

Nun ja, ich hab nur ISDN (und auch nur einen Kanal, keine Flatrate) und ich muss sagen, mich interessiert der Unterschied von 350 KByte eher nicht. Ich finde das VCL durchaus viele Vorteile bietet, aber das ist woh Ansichtssache. Aber wenn ich die Wahl zwischen 350 und 30 KB habe, ist es mir noch relativ egal (da hängt doch mehr von der Auslastung des Servers als von meiner Anbindung ab).

Luckie 3. Nov 2005 22:00

Re: Programmgröße
 
Es gibt bestimmt Fälle in denen ergibt nonVCL Sinn. Zum Beispiel ein SFX Modul für ein selbst entpackendes Archiv, wäre mit VCL ziemlicher Blödsinn. Desweiteren steckt auch ein gewisser lerneffekt dahinter, man sieht, wie Windows funktioniert und führt dazu dass man etwas verständniss dafür entwickelt. Und ich denke das eiegntliche Verständnis wird umso wichtiger, je abstarkter die Programmierung unter .NET wird.

@Hansa: Wenn die die nonVCL Programme verschrotten willst, dann kannst du deine VCL Programm aber auch gleich hinterher werfen, da die VCL auch nur die WinAPI Funktionen kapselt.

Khabarakh 3. Nov 2005 22:01

Re: Programmgröße
 
Was mir gerade aufgefallen ist: die Standard-Winforms-Anwendung (2.0) ist 6,5 KB groß. Jetzt muss man nur noch die 22 MB Framework verteilen :zwinker: (oder auf Vista warten).

Rastaman 3. Nov 2005 22:18

Re: Programmgröße
 
Zitat:

Zitat von Hansa
Zitat:

Zitat von kingflo
...so klein wie möglich zu halten, und auch früh genug damit anzufangen, falls man es mal weiter ausbaut und ruck zuck hat man dann mit zu viel VCL seine 2 MB im Prog.

Du vergisst einen wichtigen Punkt : einmal VCL, immer VCL !! Für kleine Tools läßt sich die VCL vielleicht aussparen, für eine größere Sache aber nicht. Und das in Zeiten von 30 Cent / GB und DSL. Da sitzen bei Borland ein Haufen Leute und programmieren was, was nützlich ist und dann wird das dann noch eingespart. Wer soll das verstehen, wo die WinApi auch gerade dabei ist, sich zu verabschieden ? Programme, die einen solchen Weg gehen, die verschrottet man besser heute als morgen. 8)

Ehrlich? Mist! Dann hast du dein Delphi 8 Prof ja ganz umsonst gekauft, wenn du heute schon wida die CD zerbrechen willst.

Dann kannst du, wie Luckie schon sagte, nicht nur die VCL Progs, sondern gleich alles schrotte, von Photoshop bis Delphi selbst,
weil alles auf die WinAPI aufbaut, gell? Ausserdem müssten doch dann die Entwickler von Photoshop und so alle dumm sein,
weil sie nicht die VCL benutzen, sondern C++, was man ja im Grunde mit nonVCL vergleich kann, was ich aber stark bezweifele :?
Ausserdem verabschiedet sich hier gar nix wenn Vista kommt. Denk mal schwer nach!

Keine WinAPI -> Keine Programme, weil es bis auf einen wirklich mikroskopischen Teil nur WinAPI Progs gibt.
Es wird bestimmt auch noch in der Version nach Vista die Winapi geben ...

Vista...

Virus Infections, Spyware, Trojans, Adware :gruebel:

bigg 3. Nov 2005 22:18

Re: Programmgröße
 
Zitat:

@Hansa: Wenn die die nonVCL Programme verschrotten willst, dann kannst du deine VCL Programm aber auch gleich hinterher werfen, da die VCL auch nur die WinAPI Funktionen kapselt.
Einspruch. :mrgreen:
Nein, grade weil diese Funktionen nur gekapselt werden und das ist der Vorteil dabei,
musst du sie nicht wegschmeißen. (höchstens neu kompilieren)

Wie alt sind eigentlich diese Funktionen:
- Read
- ReadLine
- Write
- BlockRead
- ...

Ich schätze mal sehr alt. :mrgreen:

Luckie 3. Nov 2005 22:25

Re: Programmgröße
 
Ja aber als VCLForms Projekt. Und da sagt selbst Borland, dass man besser ein neues Projekt mit den WinForms beginnen sollte, ergo sollte man die VCLForms meiden, da sie nur aus Kompatibilitätsgründen vorhanden sind und auch wohl eher nur eine Krücke, um nicht alles neu schreiben zu müssen.

bigg 3. Nov 2005 22:53

Re: Programmgröße
 
Ach was, es werden noch etliche Jahre vergehen bis sich die VCL verabschieden wird.
Ich sehe zumindest keinen Grund darin, sie nun nicht mehr zu verwenden, schließlich ist sie über
Jahre hinweg gereift und ziemlich solide. Die Borländer verwenden die VCL ja auch noch,
um ihre IDE weiterzuentwickeln oder wird Dexter in C# geschrieben? :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:46 Uhr.
Seite 1 von 2  1 2      

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