AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi Programme ~ 1kb

Ein Thema von mr_emre_d · begonnen am 6. Apr 2009 · letzter Beitrag vom 10. Apr 2009
Antwort Antwort
Seite 3 von 5     123 45      
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#21

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 16:03
Hallo zusammen,

was ist "nonVCL" eigentlich? wenn ich mich richtig erinnere haben "nonVCL"-Programme durchaus auch eine graphische Oberfläche, es muß also nicht Console sein.
Zitat von jaenicke:
Den Sprachumfang und Leistungsumfang kannst du aber genauso wenig vergleichen wie die Größe. ;-)
Alleine schon die visuellen Formulare brauchen eben einiges. Deshalb ist nonVCL eben deutlich kleiner.

Du kannst mit Delphi eben von Hause aus sehr viel mehr machen als mit Turbo Pascal, und auch mit jeder Version immer mehr. Irgendwoher muss diese Funktionalität schließlich kommen, das kostet Platz.
Aber ich muß Funktionen/Funktionalitäten die ich nicht benötige ja nicht mit mir herumschleppen. Wenn der Compiler mich freundlich darauf aufmerksam macht, daß eine Variable definiert wurde aber nicht genutzt wird, habe ich nichts dagegen. Warum werden dann Funktionen Proceduren mit gelinkt, die nicht gebraucht werden?

TP hat nur das mitgeschleppt was gebraucht wurde, MS-C war da wesentlich großzügiger, und der MS-Assembler hat auch genommen was er kriegen konnte.

Gruß
K-H
  Mit Zitat antworten Zitat
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#22

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 16:08
Non-VCL ist eben die strikte Untersagung der Nutzung der Komponenten aus der Visual Component Library, sowie einiger Units, welche unnötige Sachen kapseln. Somit wird fast ausschließlich auf Windows API-Funktionen zurückgegriffen. Sicher kannst du damit auch graphische Benutzeroberflächen gestalten.
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.640 Beiträge
 
#23

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 16:13
Zitat von p80286:
was ist "nonVCL" eigentlich? wenn ich mich richtig erinnere haben "nonVCL"-Programme durchaus auch eine graphische Oberfläche, es muß also nicht Console sein.
non-VCL verzichtet lediglich, wie es der Name andeutet, auf die VCL. Das bedeutet, die ganzen Delphi-Eigenen Units wie z.B. Forms fehlen. Das heisst im Umkehrschluss: Willst Du ein Fenster, hast Du kein TForm. Du musst das Fenster also selber beim Betriebssystem anfordern, Buttons selber erzeugen und positionieren etc.

Die Programme werden deswegen kleiner, weil Du nur das aus der VCL 'nachprogrammierst', was Du auch wirklich konkret brauchst. Das Erkaufst Du Dir aber durch das Fehlen des 'Alles schon fertig' Baukastens. Also: Viel handarbeit -> kleine Echse. Wenig Handarbeit und die VCL nutzen die alles schon kann -> schneller fertig, aber große Echse Man muss halt immer abwägen.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#24

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 16:29
Zitat von p80286:
Aber ich muß Funktionen/Funktionalitäten die ich nicht benötige ja nicht mit mir herumschleppen. Wenn der Compiler mich freundlich darauf aufmerksam macht, daß eine Variable definiert wurde aber nicht genutzt wird, habe ich nichts dagegen. Warum werden dann Funktionen Proceduren mit gelinkt, die nicht gebraucht werden?
Es wird nich einfach eine ungenutzte Funktion mitgeschlappt ... der Compiler bindet nur Funktionen/Prozeduren/Typen/Konstanten/Variable mit ein, welche irgendwo in "genutztem" Code verwendet werden.

Und darunter zählen auch Dinge, welche im Initialisations-Abschnitt verwendet/geladen werden.

Allerdings werden Ressourcen ohne Prüfung reingeladen ... z.B. schleppt jede Delphi-App standardmäßig immer ihren eigenen Courorsatz(Mauszeiger) mit sich rum, selbst wenn man nur den von Windows nutzt.

Die VCL ist "nur" eine komfortablere, aber rießige Kapselung der WinAPI und einiger zusätzlicher Komponenten ... das kann man zu großen Teilen auch direkt mit der WinAPI erreichen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
mr_emre_d
(Gast)

n/a Beiträge
 
#25

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 16:36
Zitat von p80286:
was ist "nonVCL" eigentlich?
> NonVCL Anwendungen sind jene, bei denen alle Windows per winAPI erstellt wurden! (und wo eben die VCL nicht verwendet wird xD; hättest auch googeln können )

Zitat von p80286:
wenn ich mich richtig erinnere haben "nonVCL"-Programme durchaus auch eine graphische Oberfläche, es muß also nicht Console sein.
> Ja, natürlich haben sie eine Oberfläche

Schau dir mal Anhang and an
(Echse mit normalem Wnd (3kb))

EDIT:
Ich habe mir die einzelnen Sektions angeschaut und habe folgendes bemerkt:
Code:
Codecaves
-----------------------
CODE   -  139
DATA   -  1F6
BSS   -  000
.idata   -  0B6
.reloc   -  200 ( vollständig leer )
.rsrc   -  11B
--------------
sum   -  700 ( = 1792 bytes )

Ohne caves = 300 ( = 768 bytes )
Wenn ich die Caves noch wegbekomme...

MfG
Angehängte Dateien
Dateityp: rar mini_209.rar (9,6 KB, 32x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#26

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 18:39
Auch noch ne möglichkeit seine Programme ein wenig kleiner zu bekommen, ist möglich durch die Benutzung des Programms "Strip-Reloc"

Strip-Reloc
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#27

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 18:55
Danke für die Nachhilfe, es ist gut aus berufenem Munde die eigenen Schlußfolgerungen bestätigt zu bekommen.

Zitat von himitsu:
Die VCL ist "nur" eine komfortablere, aber rießige Kapselung der WinAPI und einiger zusätzlicher Komponenten ... das kann man zu großen Teilen auch direkt mit der WinAPI erreichen.
Wenn ich mal viel Zeit habe bastel ich mir eine "Schmalspur-VCL" (aber die gibt's besimmt auch schon irgendwo).
die restliche Zeit lebe ich weiterhin mit 400Kb-Monstern.

Gruß
K-H
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#28

Re: Delphi Programme ~ 1kb

  Alt 7. Apr 2009, 19:00
Zitat von p80286:
Wenn ich mal viel Zeit habe bastel ich mir eine "Schmalspur-VCL" (aber die gibt's besimmt auch schon irgendwo).
die restliche Zeit lebe ich weiterhin mit 400Kb-Monstern.
so halb fertig ... keine Zeit ... gibt Wichtigeres
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#29

Re: Delphi Programme ~ 1kb

  Alt 9. Apr 2009, 14:57
So, habe mal ein wenig etwas daran herum gebastelt und ein Statictext sowie einen Button eingebaut.

Netter weise kommt nun mein Virenscanner in fahrt.

Nu ist das Ding doch schon auf 5kb gewachsen...

Was ich eigentlich fragen wollte, wo bekomme ich FillChar (bzw. (Rtl)FillMemory) her ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#30

Re: Delphi Programme ~ 1kb

  Alt 9. Apr 2009, 15:03
Zitat von p80286:
Wenn ich mal viel Zeit habe bastel ich mir eine "Schmalspur-VCL" (aber die gibt's besimmt auch schon irgendwo).
Key Objects Library
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:25 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