vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Funktion aus Thread heraus aufrufen / Events werfen 
Autor: HassoWuff
Datum: 04.04.11 11:54

Hallo liebe Leute,

Ich habe mir eine Klasse für einen Chat-Server geschrieben, dabei habe ich für die Clientanmeldung einen neuen Thread erstellt und möchte von diesem aus Funktionen aus meiner Klasse aufrufen. Ich verstehe dabei nicht, dass keinerlei Fehler ausgegeben wird, doch die Funktion nicht aufgerufen wird.

Mein Code, bzw. ein Auszug aus diesem sieht folgendermaßen aus:

Die Log-Funktion
    ' Server-Log -> Speichert alle Log-Meldungen und wirft gleichzeitig ein Event
    Public Event NewLog(ByVal message As String)
    Public ServerLog As String
    Public Sub Loging(ByVal message As String)
        ServerLog &= message & vbCrLf
        RaiseEvent NewLog(message)
    End Sub
Der Server-Start
Hier funktioniert das Log und die Meldungen werden mir dann ausgegeben..
    Public Event Startet()
    Public Event Ready()
    Public Event StoppAble()
    Public Sub Start(ByVal port As Integer)
        Loging("Starte Server an Port " & port.ToString)
        Loging("  - Belege Portnummer")
        ServerPort = port
        Loging("  - Erstelle Endpunkt")
        Dim ipendpoint As IPEndPoint = New IPEndPoint(IPAddress.Any, ServerPort)
        Loging("  - Erstelle TCP-Reservierung")
        ServerCon = New TcpListener(ipendpoint)
        Loging("  - Starte TCP-Verbindungsüberwachung")
        ServerCon.Start()
        ServerIsOn = True
        RaiseEvent Startet()
        Loging("Server wurde gestartet. Erstelle Clientverwaltung..")
        Loging("  - Bereite Verbindungsmanagement vor")
        MainThread = New Threading.Thread(AddressOf ConnectionManager)
        Loging("  - Setze Server in Bereitschaftsmodus")
        ServerIsOn = True
        RaiseEvent Ready()
        RaiseEvent StoppAble()
        Loging("Server ist nun bereit für eingehende Client-Verbindungen.")
    End Sub
Der Connectionmanager
Hier funktioniert das Log nicht mehr, es folgen keine Meldungen mehr..
Es wird aber auch kein Fehler seitens VB ausgegeben.
    Public Event ClientConnecting()
    Public Event ClientConnected(ByVal uInf As userInfo)
    Private Sub ConnectionManager()
        While ServerIsOn ' wir warten auf eine neue verbindung...
            ClientCon = ServerCon.AcceptTcpClient
            If ServerIsOn = False Then Exit Sub
            RaiseEvent ClientConnecting()
            Loging("Ein neuer Client verbindet..")
 
            Dim ui As New userInfo ' und erstellen für die neue verbindung eine 
            ' neue connection...
            ui.stream = ClientCon.GetStream
            ui.streamr = New StreamReader(ui.stream)
            ui.streamw = New StreamWriter(ui.stream)
            ui.Nickname = ui.streamr.ReadLine ' Nickname
            AddUser(ui) ' und fügen sie der liste der clients hinzu.
            RaiseEvent ClientConnected(ui)
            Loging(ui.Nickname.ToString & " ist dem Server beigetreten.")
 
            ' Hier wird ein weiterer Thread zur Überwachung der eingehenden 
            ' Daten erstellt..
            ' Auch dort besteht das Log-Problem!
            Dim clientConThread As New Threading.Thread(AddressOf _
              ClientConManager)
            ClientConThreadList.Add(clientConThread)
            clientConThread.Start(ui)
        End While
    End Sub

Wer nicht schaut ist selbst schuld: http://www.dejavu-design.eu

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Funktion aus Thread heraus aufrufen / Events werfen1.590HassoWuff04.04.11 11:54
Re: Funktion aus Thread heraus aufrufen / Events werfen895ModeratorFZelle04.04.11 12:29
Re: Funktion aus Thread heraus aufrufen / Events werfen910HassoWuff04.04.11 16:08
Re: Funktion aus Thread heraus aufrufen / Events werfen901ModeratorFZelle04.04.11 16:17
Re: Funktion aus Thread heraus aufrufen / Events werfen977HassoWuff04.04.11 18:50
Re: Funktion aus Thread heraus aufrufen / Events werfen892ModeratorFZelle05.04.11 00:02
Re: Funktion aus Thread heraus aufrufen / Events werfen809BerndPodhradsky08.04.11 15:46
Re: Funktion aus Thread heraus aufrufen / Events werfen877ModeratorFZelle09.04.11 13:21
Re: Funktion aus Thread heraus aufrufen / Events werfen844BerndPodhradsky11.04.11 13:31
Re: Funktion aus Thread heraus aufrufen / Events werfen787ModeratorFZelle11.04.11 13:57

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel