Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11
  1. #1
    Anfänger
    Registriert seit
    11.12.2011
    Beiträge
    12

    Standard TCP Chat problem

    Hi ich hab mir versucht einen Chat Client & Server zusammen zu basteln, jedoch hab ich da irgendwo einen kleinen denk Fehler drinne und find den nich

    Wenn ich den Chat Server starte und 2 Clients und anschliesend Text abschicke, dann wird mir der Text im Server Fenster 1 mal angezeigt, jedoch im Client Fenster 2 mal.

    Ware cool wenn sich jemand mein Chat mal anschauen koennte....

    http://ul.to/0nleg03n

    LG TheMadHatter

  2. #2
    PDFTT_cr3w.jpg.exe Avatar von SFX
    Registriert seit
    01.08.2008
    Beiträge
    557

    Standard

    Mal spontan geraten, kann es sein, dass der Server an den Client die eigene Nachricht wieder zurück schickt?
    free-hack secure connection

    Level 61 Troll
    [ Manifesto ]

    GPG erwünscht [ Key ]
    7A16 997D 08AA D280 4822 F0AC 2BDC 2302 4C54 C396


  3. #3
    Stanley Jobson Avatar von Bonkers
    Registriert seit
    01.02.2010
    Beiträge
    735

    Standard

    Pack den Source-Code auf Pastebin, dann gucke ich mal drüber.
    Hab keine Lust das jetzt runterzuladen

    Blackberry: der eine typ ist danach gestorben
    Bonkers: Echt?
    Blackberry: jep

  4. #4
    Anfänger
    Registriert seit
    11.12.2011
    Beiträge
    12

    Standard

    @SFX
    Ne wenn ich den Server und 2 clients oeffne wird mir im 2ten Client die Nachricht 2 mal angezeigt, aber im gesendeten Client wird die gesendete Nachricht Rausgefischt und nich angezeigt(So soll es auch sein )
    Server
    Client
    Dann hab ich noch ein 2tes Problem ^^
    In der Klasse Neuheiten.vb
    Unter:
    Public Sub Get_All_Users()

    Versuch ich alle Usernames und UserID's auszulesen um eine Anwesenheits liste zu machen, jedoch wird bei einem Versuch diese Funktion abzurufen die Verbindung getrennt....
    Kennt jemand vllt eine Andere methode dieses Ziel zu erreichen....
    Anschliesen hab ich mir auch vorgenommen die Kick Funktion einzubinden....
    Geändert von TheMadHatter (12.12.2011 um 00:45 Uhr)

  5. #5
    PDFTT_cr3w.jpg.exe Avatar von SFX
    Registriert seit
    01.08.2008
    Beiträge
    557

    Standard

    Du callst SchreibeAnJedenClient pro Nachricht 2x:

    ChatServer.vb:
    Code:
        Private Sub NewMessage(ByVal c As ChatClient, ByVal sMessage As String)
     
            RaiseEvent ClientNewMessage(c, sMessage)
            SchreibeAnJedenClient(sMessage)
        End Sub
    wirft ein Event das gehandelt wird von:
    Module1.vb:
    Code:
        Private Sub Server_ClientNewMessage(ByVal c As ChatClient, ByVal sMessage As String) Handles Server.ClientNewMessage
            Console.WriteLine(sMessage)
            Server.SchreibeAnJedenClient(sMessage)
        End Sub
    callen beide wiederrum:

    Code:
        Public Sub SchreibeAnJedenClient(ByVal sText As String)
            Try
                For Each c As ChatClient In ChatclientListe
                    c.schreiben(sText)
                Next
            Catch ex As Exception
                Console.WriteLine("Schreib an jeden Client")
            End Try
     
        End Sub
    wenn du den traffic gesnifft hättest, hättest du btw rausfinden können, ob es am client oder dem server liegt und so den bug immer weiter eingrenzen
    free-hack secure connection

    Level 61 Troll
    [ Manifesto ]

    GPG erwünscht [ Key ]
    7A16 997D 08AA D280 4822 F0AC 2BDC 2302 4C54 C396


  6. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    TheMadHatter (13.12.2011)

  7. #6
    Anfänger
    Registriert seit
    11.12.2011
    Beiträge
    12

    Standard

    Super Danke (Hab kein THX button gefunden ^^)

    Naja der Chat ist nach einem Tuturial gebaut worden und mein erstes Object Orientiertes Programm und zum ersten mal sind auch Events dabei ^^
    Dachte die Client New Message ruft das event erst hervor....

    Kannst du mir noch schnell bitte nen Tipp geben, wie ich die Usernames Auslesen kann um Jede Verbindung nach belieben zu Trennen oder etwas nur an diese Verbindung zu schicken?

  8. #7
    PDFTT_cr3w.jpg.exe Avatar von SFX
    Registriert seit
    01.08.2008
    Beiträge
    557

    Standard

    Du brauchst 2 Dinge:
    Einen bestimmten Code, an dem der Server erkennt, dass er es nur einem bestimmten User schicken soll (also ein Protokoll) und eine Änderung in deinem Code Aufbau:

    Du arbeitest nichtmehr nur mit einer Liste, sondern mit einem Dictionary.
    Der Schlüssel vom Dictionary ist dann ein String, und zwar der Name des verbundenen Users und der Wert ist dann die Verbindung.
    So kannst du dann über den Namen des Users, genau die Verbindung bekommen, die zu dem User gehört und an den die Nachricht schicken.
    Wie das in vb.net genau aussieht kann ich nicht genau sagen, ich kann die Sprache nicht..

    Zum thx:
    Rechts unten neben der Ente
    free-hack secure connection

    Level 61 Troll
    [ Manifesto ]

    GPG erwünscht [ Key ]
    7A16 997D 08AA D280 4822 F0AC 2BDC 2302 4C54 C396


  9. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    TheMadHatter (13.12.2011)

  10. #8
    DateMake Dialer
    Registriert seit
    17.10.2011
    Beiträge
    115

    Standard

    Zitat Zitat von -SFX- Beitrag anzeigen
    Rechts unten neben der Ente
    Ab 10 Beiträgen wird das freigeschalten.
    Habe mich anfangs auch dumm und dämlich gesucht

  11. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    SFX (12.12.2011)

  12. #9
    Anfänger
    Registriert seit
    11.12.2011
    Beiträge
    12

    Standard

    Super Danke fur die Tipps werde sie gleich realisieren !!!

    *ThxButton klick

    @DeeWayne

    Jo werd wohl noch nen bissle Posten mussen um Danke sagen zu koennen ^^

    EDIT: Hab es Geschafft Wenn jemand damit Probleme hat einfach Pm
    Edit: Ich hab hier mal noch ne frage ^^

    Kann ich eine Vb.net GUI anwendung und eine Console application sich verbinden lassen via. TCP?

    Sollte doch funktioniern oder ?

    So bald es die Verbindung aufbaut kommt: No connection ect. ist die ex.message


    Ok an der Konsole(Server) liegt es nicht, hab schon nen anderen Gui Client connectedn lassen.....

    http://pastebin.com/iZj6mK4h

    Ware cool wenn sich jemand das mal anschaun koente....
    Geändert von TheMadHatter (13.12.2011 um 04:50 Uhr)

  13. #10
    PDFTT_cr3w.jpg.exe Avatar von SFX
    Registriert seit
    01.08.2008
    Beiträge
    557

    Standard

    Code:
        Public ChatclientListe As New SortedList(Of Integer, ChatClient)
        Public User_Dic As New SortedDictionary(Of Integer, String)
    
    [...]
    
                ChatclientListe.Add(TotalUsers, ChatC)
                User_Dic.Add(TotalUsers, ChatC.ChatName)
    du hast nicht ganz verstanden was ich meinte

    Code:
        Public ChatclientListe New SortedDictionary(Of String, ChatClient)
    
    [...]
    
                ChatclientListe.Add(ChatC.ChatName, ChatC)
    so hälst du einfacher zusammen, was zusammen gehört.

    für deine SchreibeAnJedenClient Methode solltest du dir dann die foreach schleife anschauen

    In der Exception steht eigentlich, dass der Server die Verbindung verweigert und das auch antwortet.
    Kannst du das evt mit Wireshark aufnehmen?
    Einfach nur Loopback sniffen und auf tcp filtern, dann sollte da nicht so arg viel rauskommen
    free-hack secure connection

    Level 61 Troll
    [ Manifesto ]

    GPG erwünscht [ Key ]
    7A16 997D 08AA D280 4822 F0AC 2BDC 2302 4C54 C396


Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Irc/chat
    Von Kawa02 im Forum Support
    Antworten: 1
    Letzter Beitrag: 14.08.2009, 20:18
  2. [S] Irc Chat
    Von blackcat im Forum Sonstiges
    Antworten: 12
    Letzter Beitrag: 01.07.2009, 13:17
  3. [VB.Net]Chat Problem
    Von matze093 im Forum .NET Sprachen - Techniken
    Antworten: 13
    Letzter Beitrag: 06.06.2009, 15:28
  4. vb6 chat sende & infag problem
    Von 60t0t im Forum VisualBasic
    Antworten: 1
    Letzter Beitrag: 25.08.2008, 23:47
  5. msn chat
    Von anarIX im Forum Instant Messaging
    Antworten: 5
    Letzter Beitrag: 04.07.2008, 19:18

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •