TCP Verbindung macht was sie will...

  • VB.NET
  • .NET 4.0

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Vainamo V.

    TCP Verbindung macht was sie will...

    Moin.

    Bin ja, wie manche vielleicht wissen, mit dem Rewrite meines Chats beschäftigt und seit neustem tritt ein nie dagewesener Fehler auf, der mich ein bisschen zur Verzweifelung bringt.
    Die Clients können ganz normal Nachrichten schreiben, alles funktioniert soweit. Wenn allerdings Jemand den Chat verlässt, stürzen alle weiteren Verbindungen ab sobald die jeweilige Verbindung eine Nachricht absendet.

    Client 1 verbindet.
    Client 2 verbindet.
    Client 1: Test
    Client 1 trennt die Verbindung.
    Client 2: Test
    Client 2 wird vom Server als disconnected angezeigt. + Die Verbindung schickt unendlich viele leere Nachrichten.

    Ich bin wirklich ratlos. Zumal das Ganze nicht großartig anders abläuft als beim alten Chat, wo es ja reibungslos funktioniert.

    Hab hier mal beide Projekte sowie eine Test-Datenbank angehängt. Die müsst ihr beim Start des Servers einfach in die Konsole ziehen und Enter drücken. Das Passwort für beide User ist 1234.

    Grüße
    Vainamo
    Dateien

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Vainamo V“ ()

    Sorry für den Doppelpost aber ich glaube ein Editieren wäre an dieser Stelle etwas zweckentfremdend.

    Hab die Lösung gefunden. Die Liste der Member eines Raumes enthielt die Connection noch was beim Senden an alle Member des Raums den Fehler verursacht hat. Das Löschen aus der Liste wenn der User den Chat verlässt hat geholfen :thumbsup: . Ich wusste es muss irgendwas ganz simples sein.

    VB.NET-Quellcode

    1. tConnection.Room.Members.Remove(tConnection)


    Danke trotzdem an alle die bereit waren zu helfen. Wenn euch am Sourcecode trotzdem noch etwas aufgefallen sein sollte könnt ihr das natürlich trotzdem hier zu Wort bringen ;)
    @ErfinderDesRades



    • Im ersten Feld hättest du die IP vervollständigen müssen. Die gesamte Server-IP steht ja im Server ganz oben in Blau. Beginnt bei mir jetzt mit 192.168.178. kann bei dir aber etwas anderes sein.
    • In das zweiten Feld kommt sowas wie der Benutzername. Das ist zurzeit bei der kleinen Test-Datenbank die ich hochgeladen hatte entweder 0001 oder 0002.
    • Das dritte Feld erwartet dann das dementsprechende Passwort, welches wie oben genannt für jeden der beiden Testbenutzer 1234 ist.

    Aber du hast Recht, das hätte ich eventuell dazu sagen sollen :whistling: .