[VC++ 2005] Client - Server Programm

gl4di4t0r

Mitglied
Hallo
ich programmiere gerade eine Art Bewertungssystem für meine Klasse (für Vorträge/Referate). Jeder "Bewerter"/Schüler hat einen eigenen PC im Netzwerk.
Ich möchte zum Schluss 3 verschiedene Programme haben.
1. den Server, der die Daten von den Clientprogrammen entgegennimmt.
Der Server soll eine Form sein und ein Optionsdialog besitzen, in dem man den Port einstellen kann.
Außerdem soll man den Server per Button starten und stoppen können.
Auf der Form sollen die einzelnen Bewertungspunkte in einer Art Tabelle übersichtlich dargestellt werden. (Ich denke da an eine ListView).
Sobald ein Client seine Daten/Bewertung gesendet hat, soll die IP für weitere zusendeungen gesperrt werden. Jeder IP soll ein Name zugewiesen werden können (und gespeichert werden. Jeder Schüler hat einen PC mit fester IP).
2. Das Clientprogramm für die Schüler.
Ist soweit schon fertig bis auf die Funktion des sendens der Daten. Es sollen die Werte vieler Variablen (int) an den Server gesendet werden. Außerdem soll kenntlich gemacht werden, dass die Daten von der Schülerversion gesendet wurden.
3. Clientprogramm für Lehrer.
Vom Aufbau gleich wie die Schülerversion, nur dass mitgesendet wird, dass der Lehrer diese Daten gesendet hat.

Dazu habe ich nun folgende Fragen:
1. Wie realisiere ich am besten die Datenübertragung
2. Beim Server: TcpListener oder Sockets verwenden? Wie funktionieren Threads? (Damit das Programm nicht hängt beim Server starten).
EDIT:
3. Wie speicher ich die Bewertungen am besten?


Ich hoffe mir können hier weche helfen.

gruß gl4di4t0r
 
Zuletzt bearbeitet:
Hi!

  1. Schau mal bitte in diesen [thread=250715]Server Client Anwendung - Thread[/thread].
    Entscheide Dich für ein Verfahren was für deinen aktuellen Kenntnissstand
    und Zeitspanne die Du zur Verfügung hast in Frage kommt.
  2. Dem TcpServer und dem TcpListener liegt ein Socket zu grunde.
    Diese Objekte vereinfachen einem lediglich einen Socket als Client oder Server verwenden zu können.
    Willst ganz spezielle Aufgaben bewältigen, muss den Socket selber verwalten....
    • Kannst die Daten serialisieren. Bietet Dir aber Nachteile in Sachen erweiterbarkeit der Datenstrukturen
      die serialisiert werden sollen. Das kannst zwar beeinflussen aber nicht ohne einiges an KnowHow.
      Und vor allem nicht mit dem Framework-Serializer. Müsstest Dir dafür einen eigenen schreiben...
    • Kannst sie in eine Datanbank persitieren. Die Specherung der Daten würd ich in einer Basisklasse abfackeln.
    • Oder Du kannst sie in einem simplen XML ablegen. Das ist leicht erweiterbar und dank des XML-DOM,
      selches im System.Xml Namespace implementiert wird, sehr einfach zu verwenden.

    Würde Dir erst mal XML empfehlen.
 
o.0 :eek:

Ohh mann. Wenn das mal keine gute Idee ist. :D
Warum für ein simples Bewertungssystem überhaupt Programme entwickeln? :rolleyes:
Das stehen Aufwand un Nutzen überhapt nicht mehr in Bezug zueinander.

Warum hab ich das blos überlesen. :(
 

Neue Beiträge

Zurück