So... es gab wieder viel zu lachen, zumindest hab ich es
Dann argumentieren ich mal weiter (Laut Luckie ist das in meinem Fall das Gleiche wie "mit holen Phrasen kommen" -> egal...)
Zitat: |
Naja, erzeugen muss man die Instanz schon
|
Das war mitgedacht -> sorry hab ich ncih extra hingeschrieben
Zitat: |
Dann versuch dich doch mit FreePascal. Da hast du auch die Delphi-Sprache, sogar portierbar. Nur eben keine so schöne IDE wie Delphi. Aber Delphi magst du ja eh nicht...
|
Also ich kenne Lazerus bzw den Compiler bereits von früher und muss sagen: NEIN. Bitte keine Diskussion darüber, da ist nix zu diskutieren(zumindest nicht mit mir), denn Lazerus ist wie Linux... Ein einfaches
Beispiel eines Linux-Benutzers:
Aufgabe: Öffne den Taskmanager (oder wie auch immer er dort heißt)
Wie funktionierst:
1.Konsole öffnen
2.Tippe Befehl a
3.Tippe Befehl b
3.Merke, dass die Rechte für Befehl b fehlen -> setze Rechte
4.Tippe Befehl a
5.Tippe Befehl b
6.Tippe Befehl c
7.wechsel das verzeichnis in einen (logisch nachvollziehbaren) Pfad, der ungefähr so aussieht \asdg\var\ext\qb4\cc78\a\
8.und führe das Programm hsd45ht aus.
-> Der Taskmanager ist nun offen. (Wenn du Glück hast)
Und so ungefähr ist FreePascal. (Und befor nun jemand kommt: Der Taskmanager in Linux geht aber anders auf -> Da bin ich mir sicher
Und um auch das gleich zu sagen: Jeder der sich das zumuten will ok, aber ich halte Linux für Server-Software und ist nicht für den Home-User bestimmt, auch wenn es mitlerweile ein "benutzerfreundliches" GUI gibt.
Und zur Delphi-IDE: Die ist toll, und da habe ich absolut nichts dagegen.
Zitat: |
Und zum Thema Flaming: bisher hast du immer nur gesagt, Delphi ist Müll. Dabei kam noch nicht ein Beweis, trotzdem bestehst du vehement auf deiner Meinung. Das erfüllt alle Kriterien für Flames.
|
Wie du meinst, aber das du und mehrere einer anderen Meinung seid, heißt ja nicht, dass ich, nur weil es die Mehrheit ist, meine Meinung ändern zu wollen.
Es stimmt, dass ich Delphi mit ein wenig unqualifizierten Worten beschreiben habe
Zitat: |
Es ist dasselbe, du musst nix nachbauen...
Es ist in einer Konsolenanwendung oft sinnvoll es nachzubauen, weil dann die ganzen Units, die eine VCL-Anwendung braucht, nicht benötigt werden. Z.B. wenn ich ein SFX-Modul baue, dann baue ich viel nach, und selbst das Formular habe ich nicht mit der VCL sondern mit Visual Studio gebaut und per Resource eingebunden. Einfach, weil dadurch mein Zip-Sfx-Modul gerade mal 31 KiB groß ist. Und das ließe sich noch weiter optimieren.
|
"Es ist dasselbe, du musst nix nachbauen..." vs. "Es ist in einer Konsolenanwendung oft sinnvoll es nachzubauen" -> Hab ich irgendwas nicht mitgekriegt?
Zitat: |
Aber zurück zur Übertragung von VCL-Komponenten auf non-VCL...
Du kannst durchaus auch die TTimer-Komponente in der Konsole benutzen. Hier der elegante Weg von Luckie:
www.michael-puff.de/...imer_in_Konsole.html
und hier ein einfacherer, dafür aber nicht so eleganter Weg:
...
...
...
Naja, es funktioniert. Das ist natürlich passiert. Was sollte schon bei dem sehr einfachen ReadLn Befehl sonst passieren?
In meinem Beispiel für TTimer hab ich ReadLn ja auch benutzt...
|
Mehr dazu weiter unten... -> wenn ich drann denk
Nun zu meinem besonderen Freund Luckie
Zitat: |
Nope, das was du sagst klingt wie eine Aurede. Du wirst dich doch sicherlich noch an den Strig erinnrn können, der angeblich von dieser Funktion zerstört wurde.
|
Warum ich nur wusste, das das kommt...
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: 30: 31: 32: 33: 34: 35: 36: 37: 38:
| program Project1;
{$APPTYPE CONSOLE}
uses SysUtils, windows;
procedure writetheshit(text:string); var temps2:string; begin
SetLength(temps2,Length(text)+1); CharToOEM(PChar(text),PChar(temps2));
Writeln(temps2);
end;
var terminated:Boolean; temps:string;
begin { TODO -oUser -cConsole Main : Insert code here }
terminated:=False;
writetheshit('hää? -> daß geht ja gär nischt ünd ist übrigens total falß! äöüäöüäöüäöööäüäöüäöäöüöüöäöüöäöüöäöüööüöäöüöäöüöäöüööüöäöüöäöüöäöüö');
writetheshit('hähähähähähähähähäähähähähähähähähähähähähähähähähähähähähähähähähähähähähäh');
while terminated=false do begin temps:=''; Readln(temps); writetheshit(temps); end;
end. |
Es sind ein paar Hä zu wenig nicht? -> Außerdem: warum springt er nicht in die nächste zeile "write line" -> oder heißt es etwas anneres?
Aber warscheinlich nutze ich die Funktion einfach nicht richtig...
[quote]
Es gibt keine Delphi-Konsole. Die Konsole hat rein gar nichts mit der Entwicklungsumgebung zu tun. Die Konsole ist eine Windows Umgebung für Programme ohne GUI, die vom Windows Kommandointerpreter zur Verfügung gestellt wird. Delphi stellt nur mehr oder weniger Funktionen bereit, um Anwendungen für die Konsole schreiben zu können. Es kann durchaus sein, dass andere Sprachen in dieser Richtung schon mehr Unterstützung mitbringen, aber all das kann man auch mit Delphi nachrüsten. Ich kann auch mit einem Trabbi die Ralley Paris - dakar fahren, allerdings werde ich wohl etwas mehr umbauen müssen, als bei einem Jeep.
[quote]
Also muss ich das doch nochmal verdeutlichen was ich meine:
Mir ist schon klar, das die Konsole sich nie piepend über den bildschirm bewegen wird und dabei die Hintergundfarbe zwischen blau und rot alle 2ns welchsen würde, zumindestens nicht ohne größeren aufwand. Was ich meine ist folgendes:
Nimm dir 10 Min Zeit...
Starte Delphi -> mach eine neue Form, werf einen serversockt drauf, mach auf das onconnect ereignis eine showmessage...
Connecte mit irgend einem Programm (z.B. Nettools oder ein eigenes). -> Was Passiert? -> Natürlich die showmessage geht auf.
Nun schließe den Kram, mache eine Konsolenanwendung, deklariere deine Variable vom typ TServerSocket,
initialisiere sie und verbinde mit dem onconnect-ereignis ein writeln('Irgendwas') (Über eine procedure). ganz am Ende vom COde noch ein readln, damit sich das Programm nicht schließt, ab geht... was passiert beim erneuten connecten?
Wenn dus hinbekommst, das er das writeln ausführt, dann biste weiter als ich und postest bitte den code. (Also ich meine ohne weiteren Code)... (Un mit weiteren Code, dann poste mir bitte acuh
Zitat: |
Wenn für dich das nicht auf der Hand liegt, dann kannst du noch nicht allzuviel mit Delphi gemacht haben. Hast du je eine Komponente dynamsich erzeugt, wenn du die Komponente auf die Form gezogen hast? Wo hast du die Eigenschaften der Komponte festgelegt? Im Code zur Laufzeit oder zur Designzeit im ObjektInspektor? Auf was kannst du eine Komponente ziehen, wenn du keine Form hast, sondern eine Konsolenanwendung schreibst udn wo ist der Objektinspektor für eine Konsoleanwendung? Also liegt es wohl doch auf der Hand.
|
Bitte sag mir nicht, das ich "wohl noch nicht allzuviel mit Delphi gemacht habe" -> Es ist mir durchaus bewusst, dass ich die Parameter über keinen schönen GUI zuweisen kann usw., aber darüber hinaus funktionierts trozdem nicht (wie oben hoffentlich erfolgreich demonstriert), das ist mein Problem. Und ob ich nun den Port meines Servers über den Object Inspektor eingebe, oder im code eingebe macht keinen großen unterschied.
Zitat: |
Dann guck dir mal Java oder C# an.
|
Mit Java hab ich mich nicht auseinander gesetzt, aber mir gefällt die Syntax, sprich vor allem die {} in c++ nicht -> unterschied zu c# ? -> Dort gibts die auch hinzu kommt noch die Tatsache, das man eine Runtime für den Kram brauch und ich den Eindruck habe, das es sehr langsam ist (beim ersten "auf-das-system-zuschneiden")
Zitat: |
Guck mal nach, wer das Wort crap zu erst in die Diskussion eingebracht hat und wer Delphi als Müll bezeichnet hat, nur weil er wohl damit nicht klar kommt und anscheinend völlig flasche Vorstellungen hat, was Delphi, seiner Meinung nach, können müsste.
|
Da hast du recht.
"und [du] anscheinend völlig flasche Vorstellungen ha[s]t, was Delphi, seiner Meinung nach, können müsste."
völlig falsche Vorstellungen von der eigenen Meinung, das ist schon enttäuschend -> hab ich den Satzbau nicht durchblikt -> ok dann liegt der Fehler bei mir.
Zitat: |
OK, für Delphi gibt es nicht so viele verfügbare IDEs wie für C/C++, aber du könntest dir mal FreePascal angucken, da hast du dann auch die Portierbarkeit nach Linux.
|
Kommentar oben...
Zitat: |
Jepp, das trifft es ganz gut. Borland hat auf Drängen der Community Kylix entwicklet, aber recht schnell gesehen, dass es eine Fehlentscheidung war und das Projekt Kylix wieder eingestellt.
|
Gut, das hab ich bis jetzt nicht gewusst, ich wusste nur, das es nciht gescheit auf meinem System funktioniert hat.
Zitat: |
Und wieder nur eine hole Phrase. Nenn doch endlich mal die Dinge beim Namen, dir dir für eine Konsolenanwendung angeblich fehlen. Die Konsole für Windows ist eben nur dafür ausgelegt Text auszugeben und einzugeben. Was soll dir da Delphi noch mehr bieten?
|
Ich habs oben versucht zu erklären...
Aber nochmal Respekt für deine Rethorik... Wenn ich leicht angetrunken wäre, könntest du mich bestimmt überzeugen, dass sich ein Skateboard nicht von einem Auto unterscheidet, oder das ein Kamm ein Fön ist.
Zitat: |
Könntet Ihr jetzt bitte wieder zum ursprünglichen Thema zurückkommen und vor allem sachlich bleiben? Danke!
|
Jetzt sei mal nicht so borniert, wir diskutieren hier völlig unsachlich über ein Thema
Greez Rylon
PS: @Luckie -> Bitte sei mir nicht persöhnlich böse, dass ich dei die ganze Zeit angreife.