C# Kleines Chatprogramm

ali7566

Lieutenant
Registriert
Feb. 2007
Beiträge
964
Servus Jungs und Mädels,

ich habe vor in C# ein kleines Chatprogramm zu schreiben, ganz Simpel eine kleine Form, mit einer Rich Textbox, einen Senden Button und ein Suchen Button.

Der Suchen Button soll die selben Programme suchen die Gerade geöffnet sind um diese dann auszuwählen und dann einen String zu verschicken.

Leider habe ich im moment noch keine Idee oder ein Fundament auf dem ich aufbauen kann.

Hätte da jemand einen Tipp, eine Anregung usw. wie ich da vorgehen kann.

Ich müsste im Prinzip ja auch die Betriebssystemebene greifen ?

Achso: Das ganze soll erstmal nur auf einem Computer laufen, quasi: Ich öffne 2 dieser Programme und versende gegenseitig nachrichten.

Gruß Ali.
 
Also wenn sich Programme im Netzwerk gegenseitig finden können sollen, dann gibt es zwei Möglichkeiten: alle IP-Adressen abklappern (was aber lang dauern kann) oder einen Broadcast senden und auf Antwort hoffen (geht nur über UDP)... tja und dann allgemeine Überlegungen: UDP oder TCP, selbst coden oder mit WCF machen (.NET 3 aufwärts, kann aber keine Broadcasts iirc bzw. weiß ich grad nicht ob man damit im Netzwerk nach Contracts suchen kann)
 
Also wenn das wirklich nur auf einem Computer laufen soll und kein Server/Client-Design sein soll, würde ich den Datenaustausch über einfache Textdateien machen. Jedes Programm legt sich eine Datei an und schreibt in die rein. Die anderen Instanzen können dann diese Dateien auslesen.

Um das ganze erweiterbar zu machen, solltest du auf jeden Fall ein Server/Client-Design wählen. Denn du willst ja auch wissen von wem die Nachrichten kommen, also brauchst du eine Nickname verwaltung, etc. Außerdem kann sich jeder Client einfach am Server anmelden.

Am einfachst wäre es, wenn sich jeder Client einfach am Server anmeldet (Nickname, IP+Port), der Client bekommt dann eine Liste mit den angemeldeten Clients und der Client kann sich dann direkt auf einen anderen Client verbinden.
 
Danke für den Link.

Ich denke ich mach es gleich mit Netzwerk. Zwar ist das schwerer, jedoch motiviert mich das mehr ;)

Gruß Ali.
 
Zurück
Oben