![]() |
erste nonVCL-Anwendung..
Hi,
ich versuche gerade mit der Hilfe von Luckie's Tutorial mein erstes NonVCL-Proggi auf die Beine zu stellen, allerdings scheiter ich bereits daran die standardmäßig zum Programm hinzugefügte Form zu entfernen. Der Compiler meckert immer dass die Deklaration fehlt wenn ich sie aus dem Quelltext nehme, aus dem ganzen Projekt entfernen kann ich sie aber nicht da es sonst auch die Unit mit entfernt. Und noch eine theoretische Frage: Wenn man die Form für seine Anwendung nicht benötigt sondern nur einzelne Komponenten, ist es da möglich die Komponenten zu benutzen und die Form komplett aus dem Projekt zu entfernen? Viele Grüße, Wannabe |
Re: erste nonVCL-Anwendung..
Nimm einfach eine neue Konsolenanwendung und ändere den APPTYPE in GUI. Rest siehe Tutorials. Oder du nimmst die erste Anwendung ('Fenster') aus dem Demos als Grundgerüst. Und als dritte Möglichkeit kannst du meine Vorlagen, die ich immer als Grundlage für nue nonVCL Programme nehme, benutzen:
![]() |
Re: erste nonVCL-Anwendung..
Nachtrag: Wenn du eine Vorlage von mir nimmst, nimm bitte den weißen Banner raus und guck mal, was in der Ressource für ein Copyright drinne steht. ;)
|
Re: erste nonVCL-Anwendung..
Hi Luckie,
keine Sorge, ich achte dein Copyright natürlich :wink: Ich benutze deine Programme ja auch nur zum Lernen des Prinzips der NonVCl-Programmierung. Danke für den Tipp mit der Konsolenanwendung, vielleicht solltest du in einer (möglichen) nächsten Version deines API-Tutorials das irgendwo mit unterbringen, weil als Anfänger kommt man da nicht gleich ohne weiteres drauf. Aber nochmal zu meiner zweiten Frage, ist es denn möglich auf die Form zu verzichten wenn man sie nicht braucht und damit Speicherplatz zu sparen und trotzdem Komponenten der VCl in der Anwendung zu benutzen? Viele Grüße, Wannabe |
Re: erste nonVCL-Anwendung..
Warum wölltest du auf die Form verzichten und dann doch andere Kompos verwenden? Die VCL ist ziemlich monolithisch. Also viel Hoffnung mache ich dir da nicht ;)
|
Re: erste nonVCL-Anwendung..
Zitat:
Ich habe auch schon bisschen mit den KOL-Komponenten (Key Objects Library, ![]() |
Re: erste nonVCL-Anwendung..
Indy gehört jetzt zur VCL? :gruebel: Seit welcher Delphi-Version denn? Sagt doch niemand, daß du nichtvisualle Kompos nicht nutzen könntest. VCL = Visual Components Library, oder?
|
Re: erste nonVCL-Anwendung..
DA hilft dir vllt des MCK des bietet son schicken wizard mit dem man sich VCL forms in KOL konforme forms umfriemeln lassen kann (auch von dieser KOL Gruppe) is abern bisschen fummelig - jedoch wird Indy darauf nicht funzen und du müsstest dir die indykomponenten wenn dann schon selber definieren - also nich einfach aufs formular packen sondern selber createn ..... IdTcpClient1 := TIdTcpClient.Create(Form1); ... beispielsweise
|
Re: erste nonVCL-Anwendung..
@Olli
Aeeh ja, du hast natürlich recht :oops: Ich hab da bisschen was durcheinandergewürfelt. @barf00s Ja, das mit dem Createn zur Laufzeit dachte ich mir schon, allerdings habe ich mit diesen KOL-Komponenten noch ganz schön zu kämpfen, der Kompliler bemängelt immer mal wieder fehlende *.dcu's. Jedenfalls habe ich die Kombination NonVCL/Indy mal probiert, allerdings ist die kompillierte EXE trotzdem gleich mal ~200KB groß. Werden die ganzen Units in Uses wirklich benötigt? Wenn man testweise die TIdIRC-Komponente auf ein Formular packt werden jedenfalls all diese automatisch hinzugefügt, also doch auch verwendet?
Delphi-Quellcode:
program test1;
{$APPTYPE GUI} uses IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdIRC; Var IdIRC1 : TIdIRC; begin IdIRC1 := TIdIRC.Create(nil); IdIRC1.Nick := 'Blabla'; end. |
Re: erste nonVCL-Anwendung..
das geht nicht ;)
also kompilierteschnisch schon, aber wird dein ircchat NICHT funktionieren, da die INDY komponenten auf dem Windows Nachrichtensystem basieren ... du nimmst dir entweder einen Thread zuhilfe in dem du dein ganzes senden, empfangen machst, oder baust dir ne WndProc nach und das die .exe 200kb größer iss, sollte dir auch klar sein, da Indy auch nicht auf diverse Units wie Dialogs, Forms, SysUtils verzichtet ...... eventuell hilft dir da die "Internet Component Suite" von Francois Piette ... google einfach mal nach ICS (müsste ne .be seite sein) [edit]jetz hab ich den link gefunden den ich gesucht hatte ![]() ist nen extrem primitiver client mit dem so eine sockel kommunikation möglich ist... wenn du daraus nen richtigen irc client basteln willst dann is das RFC1459 dein Freund ( ![]() [/edit |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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-2025 by Thomas Breitkreuz