Laden...

VersuchsChat

Erstellt von ErfinderDesRades vor 15 Jahren Letzter Beitrag vor 15 Jahren 3.646 Views
ErfinderDesRades Themenstarter:in
5.299 Beiträge seit 2008
vor 15 Jahren
VersuchsChat

Das Snippet TCP_IP_Asynchron Leichtgemacht hat mich angeregt, meinen VersuchsChat mal nach c# zu transferieren.
Der geht mit TCPListener und TCPClient, statt mit Sockets.
Besonders nett ist, denke ich, daß Client und Server eine gemeinsame Basis haben, die das Wesentliche (Senden und Empfang melden) vereinheitlicht, sodaß das Mainform mit einem polymorphen "_ServerOrClient" - Objekt arbeitet, und also Server Or Client sein kann.
Das vermeidet eine Menge redundanten Code, und ist zum Entwickeln sehr praktisch, nämlich sowohl Server als auch Client in derselben Solution entwickeln und testen zu können.

Schlagwörter: <TCP, TCPClient, TCPListener, Chat, Socket, Remote>

Edit: Nochn kleinen Bug plattgemacht
Edit: 2 Buttons, die nur einmal gedrückt wern dürfen, danach disabled
Wichtiger Hinweis:

dein Programm zickt bei mir etwas wegen der Firewall herum.

Logisch, ja.
Und wenn man den Firewall auf höchste Sicherheitsstufe hat, gibt der glaub, nichtmal 'ne Meldung, wenners Proggi abwürgt.
Weil das scheint sein Job zu sein: Proggis abwürgen, die ungefragt ins INet wollen.
Ich hab den Firewall auf mittel-sicher, da fragt er, ob er ein Prog abwürgen soll oder nicht.

Der frühe Apfel fängt den Wurm.

ErfinderDesRades Themenstarter:in
5.299 Beiträge seit 2008
vor 15 Jahren

Ein Code-Snippet hier einzustellen macht vermutlich nicht so viel Sinn, es sind ja 3 Klassen, die auch noch auf 2 Helfer-Klassen zugreifen. Ich mach stattdessen 'n ScreenShot.

Der frühe Apfel fängt den Wurm.

ErfinderDesRades Themenstarter:in
5.299 Beiträge seit 2008
vor 15 Jahren

Hier ist jetzt noch eine c#2005-Version.
Allerdings habe ich nur ganz schematisch die 2008-Extension-Functions in normale Functions umgeschrieben.
Dadurch verlieren die aber ihren eigentlichen Sinn, will sagen: unter c#05 sollte man die Helfer-Klassen nochmal genau überdenken.

Der frühe Apfel fängt den Wurm.

344 Beiträge seit 2007
vor 15 Jahren

Hallo ErfinderDesRades,
dein Programm zickt bei mir etwas wegen der Firewall herum.
Nach abschalten geht es!

Folgendes ist mir aufgefallen: Wenn man das Programm als Server nutzt und
während des Betriebs auf den Button "Client" klickt, hängt es sich meistens auf.
Denke mal an doppelter Socketbelegung? Vielleicht sollte man das noch Abfangen.

Schöne Grüße

👶-> :]-> 8o-> 🙂

ErfinderDesRades Themenstarter:in
5.299 Beiträge seit 2008
vor 15 Jahren

Hi!

Danke für die Hinweise.
Hinweis zurück 😉:
Ich hab den Firewall auf mittel-sicher, da fragt er, ob er ein Prog abwürgen soll oder nicht.

Der frühe Apfel fängt den Wurm.