![]() |
Was genau ist VCL?
Bitte nicht erschlagen, aber diese Frage muss ich loswerden...
Was ist VCL eigentlich genau? Also ich habe das so verstanden: VCL sind RuntimePackages, die nötig sind um mein Programm auszuführen. Diese werden normalerweise in meine Anwendung mit reingepackt, deshalb ist sie so groß. Wenn ich jetzt aber nonVCL programmiere dürfte meine Anwendung ja nicht auf jedem Rechner laufen, da die Packages fehlen. Ist das so? In Delphi 8 kann ich mich entscheiden, ob ich WinForm benutze oder VCLForm. WinForm-Anwendungen sind dabei deutlich kleiner, was nach meinem verständnis ja logisch ist. Meine Win-Form-Anwendung bezieht ihre RuntimePackages von Windows (API). Jetzt habe ich aber gelesen, dass Delphi 8 nur für .NET Anwendungen ist. Das ist doch eigentlich eine dritte PlattformForm (API, VCL, .NET), oder kann ich mich da auch entscheiden, ob ich mit VCL oder mit API arbeite, und warum hier die trennung zwischen WinForm und VCLForm, vorher ging es doch auch zusammen? Aber .NET scheint nochmal was ganz anderes zu sein, da ich die Anwendung auf keinem anderen Computer ausführen kann. Was macht da den unterschied? Was brauche ich: .NET Framework, .net Framework SDK oder Visual J# .NET? Vielleicht will sich mir ja jemand annehmen... |
Re: Was genau ist VCL?
Also ich denke die Frage ist hier im Forum bestimmt schon geklärt, du könntest also die suchfunktion starten.
andernfalls habe ich hier was gefunden: ![]() |
Re: Was genau ist VCL?
Zitat:
|
Re: Was genau ist VCL?
Zitat:
|
Re: Was genau ist VCL?
Hallo,
@Hansa : da hast du wieder einen gucken lassen @Robert: du kannst einfach nicht anderst @Patrick : D7 Enterprise und dann die Frage? wohl eine zeitlich ausgeborgte Lizenz raik |
Re: Was genau ist VCL?
@Kiar : dann erklärs doch. :mrgreen:
|
Re: Was genau ist VCL?
Die VCL vereinfach den Umgang mit der WinAPI (welche ja intern aufgerufen wird). Da dafür die Klassen eingebunden werden müssen, wird dein Programm verständlicherweise größer. Bei NonVCL greifst du direkt auf die WinAPI zu und kannst dir die VCL Klassen sparen, also wird die Exe wieder kleiner. Ich denke .NET würde sich nun am besten mit der WinAPI vergleichen lassen (auch wenn der Aufbau und die interne Abwicklung ganz anders ist). Dort brauchst du auch keine VCL und das Programm bleibt klein. Außerdem hat .NET eine bessere Struktur, habe selber aber noch nicht viel mit gemacht.
Warum kannst du bei .NET die Anwendungen nicht auf einem anderen Rechner ausführen, dieser muss nur das .NET Framework installiert haben, so wie du für Java für passende Java Dinge (:lol:) installiert haben musst. Im Gegensatz zur WinAPI und VCL (die ja zusammengehören) - von der VCL für .NET mal abgesehen - musst du .NET nutzen (oder halt CLX mit Kylix), wenn du deine Anwendungen auch auf anderen Betriebssystemen laufen lassen willst. Soll ja mit Mono soweit auch bspw. unter Linux gehen. Aber da kann ich wieder nicht allzu viel zu sagen. Hoffe mal dass die Erklärungen - wenn auch kurz - soweit richig sind :P MfG Pr0g |
Re: Was genau ist VCL?
Was ist die VCL:
Zitat:
|
Re: Was genau ist VCL?
@Fragesteller: [Leicht OT] :gruebel: ... wenn man Delphi 7 Enterprise hat, schämt man sich dann für eine solche Frage? :| ...
|
Re: Was genau ist VCL?
Zitat:
Tut aber auch nicht ganz zur Sache... Zum Thema: Als VCL kann man (ganz galopp) den Formdesigner bezeichnen, mit dem man einfach Komponenten aufs Formular schiebt und Properties/Events zuweist. Die gesamte VCL ist jedoch eine Ansammlung von Units, die immer mit deinem Programm mitgegeben werden. Die VCL erleichtert nicht nur das arbeiten mit Fenstern (Forms) und Komponenten, sondern liefert auch eine ganze Reihe Funktionen mit, die du jederzeit nutzen und aufrufen kannst. Du wirst wahrscheinlich nie alle Funktionen in einem Projekt brauchen, aber du hast da eine Auswahl, ohne neue Units mitliefern zu müssen. Die VCL kann jedoch in jedem Delphi-Projekt mitgeliefert werden (alle Units in die uses-Klausel aufnehmen und dann noch ein wenig die Struktur ändern, fertig ist es). Das wiederspricht jedoch auch ein wenig dem Sinn von nonVCL-Anwendungen... Zu .NET kannst du aber problemlos die Suchfunktion benutzen. Es gab schon einige Fragen zu "Was ist .NET" ;) //edit: An alle, die seine Delphi-Version wundert: Es gibt ja auch Leute, die ältere Geschwister/Eltern/Onkel/Tante/Opa haben, die nicht mehr programmieren (oder nur noch selten) und daher ihr Delphi abgegeben/verliehen haben. Oder aber auch ein Schnäppchen bei Ebay :zwinker: |
Re: Was genau ist VCL?
@malo: Erzähl uns hier bitte nichts vom Storch.
Zitat:
Zumal ich bezweifle, dass du jemals FreePascal unter Linux verwendet hast. PS: Schön, das ihr euch über den Thread-Ersteller so amüsiert, eure Antworten sind übrigens genauso lustig. PSPS: Mit 19 schon ne Enterprise am laufen, respekt. Ich geh erstmal ne runde roflen. |
Re: Was genau ist VCL?
Zitat:
Ich habe nur über Hansa hergezogen... :mrgreen: p.s.: Schön dass du ihn nichts zu Mono gefragt hast. :mrgreen: |
Re: Was genau ist VCL?
Man könnte die VCL als WinAPI-Wrapper bezeichnen.
Um nun zu verstehen, was die VCL ist, muss man zwei begriffe definieren: API = Application Programming Interface = Programm-Programmierungs-Schnittstelle = Eine Schnittstelle, über die man auf alles zugreifen kann, das Windows zum Zugriff vorgesehen hat. Da gehören so Sachen dazu wie das Dateisystem, Systemeinstellungen und eben die visuellen Komponenten, welche durch einen Funktionsaufruf, welcher ein Handle zurückliefert, erzeugt und über dieses Handle weiterverwendet werden können. Wrapper = Verpacker = ein Konstrukt, das um das zu Wrappende "gewickelt" wird, um den Zugriff einfacher zu machen. Die VCL pacvkt die API-Funktionen also in ein eigenes Konstrukt ein, die das Operieren dieser API einfacher macht, aber dafür natürlich einen Overhead verursacht. ich hoffe, das ist verständlich. @Enterprise: @kiar: Verleumdung :warn: @Olli: Unverschämtheit... :roll: Ich hätte mit dem nötigen Kleingeld auch gleich ne Enterprise oder zumindest Professional gekauft... |
Re: Was genau ist VCL?
Wer zieht über mich her ? :shock: Es muß doch lediglich ein Konsens hergestellt werden. Also bemüht euch auch darum ! :mrgreen: Es nützt ja wohl nichts, unnötigerweise über die VCL herzuziehen. Kiar soll mal den Rest vernünftig erklären. :mrgreen:
|
Re: Was genau ist VCL?
Zitat:
|
Re: Was genau ist VCL?
Ersteinmal Danke für eure Zahlreichen Antworten!
Vielleicht kann mir noch schnell einer sagen, warum eine mi Delphi 8 erstellte Anwendung nicht auf dem PDA von meinem Freund läuft. Weder die WinForm noch die VCLForm. Dabei laufen diese PDAs doch auf .NET...? Oder nicht zwangsläufig? Was meine Delphi-Version angeht hat sich da noch nie einer gewundert. Warum ich diese Version habe, bzw. wie ich da dran gekommen bin ist meine Sache... |
Re: Was genau ist VCL?
@Kindergarten : schämt euch. Insbesondere RG. :mrgreen: Muß euch ein 14-jähriger zumindest versuchen zu erklären, was die VCL ist ?
Malo hat das schon richtig erklärt : im Prinzip ist die VCL alles, was z.B. bei einem neuen Projekt verfügbar ist. Also die Form und die Komponentenleiste, indirekt auch Objektinspektor usw. Allerdings müssen die VCL-Dateien der einzelnen Komponenten bei einem Projekt nicht mitgegeben werden, damit es auch läuft ! Mit der WinApi hat das alles aber auch nur bedingt zu tun. Je tiefer man in der VCL-Hierarchie nach unten geht, also zu dem Vorfahren einer Komponente, um so höher ist die Wahrscheinlichkeit, daß man auf irgendwelche WinApi Sachen stößt, selbst wenn man das selber nicht benutzt. Die Delphi-Vcl wurde nun von Borland gemacht, um eben leicht ein Programm zusammenklicken zu können. Da ist viel Drumrum mit dabei, weil Windows selber zu wenig hergibt. Je nachdem was gebraucht wird, bindet der Linker deshalb recht viele Units mit in die EXE. Glaube aber, die Frage zielt eher auf VCl.NET/Winforms ab. Ersteres dient anscheinend nur zur Kompatibilität bzw. leichterer Umstellung eines Programmes auf .NET. .NET bietet nun nicht nur Funktionen zum Zeichnen usw. an, sondern da liegt tatsächlich ein Button usw. vorgefertigt im Betriebssystem vor, den man benutzen kann. Momentan aber nur im .NET-Framework. Da 99% aller benutzten Computer das aber wohl nicht haben, nützt das alles vorerst recht wenig. |
Re: Was genau ist VCL?
Zitat:
|
Re: Was genau ist VCL?
Zitat:
|
Re: Was genau ist VCL?
Zitat:
Die Sache mit dem PDA ... nunja, VCLForms bedeutet: nativer Binärcode. Daher *kann* es garnicht funktionieren, da mir kein PDA mit einem Pentium-binärkompatiblen Prozessor bekannt ist. Für .NET gilt gleiches in abgewandelter Form. Portabel heißt nicht automatisch, daß man die Binärdatei portieren kann ... |
Re: Was genau ist VCL?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:36 Uhr. |
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 by Thomas Breitkreuz