vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

VB.NET - Ein- und Umsteiger
TCP/IP Threadübergabe von Clienten ( INVOKE) ? 
Autor: S3Ri0US
Datum: 15.06.09 05:31

Guten Morgen zusammen ! Ich versuche mich gerade an den neuen TCP sachen. Das letzte mal als ich etwas für das Netzwerk geschrieben habe war WinSock noch Aktuell.. habe mich also die letzten 5 Stunden mit den neuen Socket funktionen auseinander gesetzt. Nun habe ich allerdings mal wieder ein Invoke-problem.
Ich möchte ein ganz einfaches senden und empfangen von Server zu Clienten machen. Ja Clienten. (mehrzahl)

z.b. Client schickt String : Hello... server schickt string: Welcome zurück.

Das ganze Funktionier auch schon ganz gut. Nur irgend wie muss ich jetzt aus meiner CLasse welche über einen neuen Thread gestartet wird auf die Windows.Forms zugreiffen können. habe es mit einem Method Invoker versucht. Allerdings friert die Anwendung ein sobald dieser aufgerufen wird.


    Sub StartTCP_list()
 
        Dim ipAddr As System.Net.IPAddress
        ipAddr = IPAddress.Parse(GetLocalIP)
 
        Dim serverSocket As New TcpListener(ipAddr, 8888)
        Dim clientSocket As TcpClient
        Dim infiniteCounter As Integer
 
        serverSocket.Start()
        status_text.Text = "TCP-Überwachung gestartet."
        infiniteCounter = 0
        For infiniteCounter = 1 To 2
            infiniteCounter = 1
            clientSocket = serverSocket.AcceptTcpClient()
 
            Dim client As New handleClinet
            client.startClient(clientSocket, clientsList)
        Next
 
        clientSocket.Close()
        serverSocket.Stop()
        status_text.Text = "TCP-Überwachung wurde beendet."
    End Sub
 
    Public Class handleClinet
        Dim clientSocket As TcpClient
        Dim clientsList As Hashtable
 
        Public Sub startClient(ByVal inClientSocket As TcpClient, ByVal cList _
          As Hashtable)
            Me.clientSocket = inClientSocket
            Me.clientsList = cList
            Dim ctThread As Threading.Thread = New Threading.Thread(AddressOf _
              doChat)
            ctThread.Start()
        End Sub
 
        Private Sub doChat()
            Dim infiniteCounter As Integer
            Dim bytesFrom(10024) As Byte
            Dim dataFromClient As String
            For infiniteCounter = 1 To 2
                infiniteCounter = 1
                Try
                    Dim networkStream As NetworkStream = clientSocket.GetStream( _
                      )
                    networkStream.Read(bytesFrom, 0, CInt( _
                    clientSocket.ReceiveBufferSize))
                    dataFromClient = System.Text.Encoding.ASCII.GetString( _
                    bytesFrom)
 
                    Dim broadcastStream As NetworkStream = _
                      clientSocket.GetStream()
                    Dim broadcastBytes As [Byte]()
 
                    broadcastBytes = Encoding.ASCII.GetBytes("test")
 
                    broadcastStream.Write(broadcastBytes, 0, _
                      broadcastBytes.Length)
                    broadcastStream.Flush()
                Catch ex As Exception
                    clientSocket.Close()
                    MsgBox(ex.ToString)
                End Try
            Next
        End Sub
    End Class
hoffe es fällt euch was ein. Habe es auch schon mit Globalen Variablen versucht. Da es sich aber um mehrere Clienten handelt, war auch dies eine Sackgasse.

Danke für eure Hilfe.

Beitrag wurde zuletzt am 15.06.09 um 05:31:36 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
TCP/IP Threadübergabe von Clienten ( INVOKE) ?2.469S3Ri0US15.06.09 05:31
Re: TCP/IP Threadübergabe von Clienten ( INVOKE) ?1.737ModeratorRalf Ehlert15.06.09 08:11
Re: TCP/IP Threadübergabe von Clienten ( INVOKE) ?1.707S3Ri0US15.06.09 16:05
Re: TCP/IP Threadübergabe von Clienten ( INVOKE) ?1.659ModeratorDaveS15.06.09 17:30
Re: TCP/IP Threadübergabe von Clienten ( INVOKE) ?1.881S3Ri0US15.06.09 17:40

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-2024 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