vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 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 - Ein- und Umsteiger
Re: Pc's Verbinden mittels System.Net.Sockets Teil5 
Autor: dj.tommy
Datum: 23.09.15 10:04

#Region " Private Functions/Subs "
    Private Sub ChangeState(ByVal new_state As WinsockStates)
        _State = new_state
        RaiseEvent StateChanged(Me, _State)
    End Sub
    Private Sub OnConnected(ByVal asyn As IAsyncResult)
        Try
            _Client.EndConnect(asyn)
            Me.ClientFinalizeConnection()
        Catch ex As Exception
            ChangeState(WinsockStates.Error)
            RaiseEvent HandleError(Me, ex.Message, ex.TargetSite.Name, _
              ex.ToString)
        End Try
    End Sub
    Private Sub ClientFinalizeConnection()
        ChangeState(WinsockStates.Connected)
        _Client.BeginReceive(_byteBuffer, 0, 1024, SocketFlags.None, AddressOf _
          DoRead, Nothing)
        RaiseEvent Connected(Me)
    End Sub
    Private Sub DoListen()
        Try
            _sockList = New Socket(AddressFamily.InterNetwork, _
              SocketType.Stream, ProtocolType.Tcp)
            Dim ipLocal As New IPEndPoint(IPAddress.Any, LocalPort)
            _sockList.Bind(ipLocal)
            _sockList.Listen(1)
            ChangeState(WinsockStates.Listening)
            _sockList.BeginAccept(New AsyncCallback(AddressOf OnClientConnect), _
              Nothing)
        Catch ex As Exception
            Me.Close()
            ChangeState(WinsockStates.Error)
            RaiseEvent HandleError(Me, ex.Message, ex.TargetSite.Name, _
              ex.ToString)
        End Try
    End Sub
    Private Sub OnClientConnect(ByVal asyn As IAsyncResult)
        Try
            Dim tmpSock As Socket
            If GetState = WinsockStates.Listening Then
                tmpSock = _sockList.EndAccept(asyn)
                RaiseEvent ConnectionRequest(Me, tmpSock)
                _sockList.BeginAccept(New AsyncCallback(AddressOf _
                  OnClientConnect), Nothing)
            End If
        Catch ex As Exception
            Me.Close()
            ChangeState(WinsockStates.Error)
            RaiseEvent HandleError(Me, ex.Message, ex.TargetSite.Name, _
              ex.ToString)
        End Try
    End Sub
    Private Sub DoStreamReceive(ByVal ar As IAsyncResult)
        Dim intCount As Integer
        Try
            SyncLock _Client
                intCount = _Client.EndReceive(ar)
            End SyncLock
            If intCount < 1 Then
                Me.Close()
                ReDim _byteBuffer(1024)
                RaiseEvent Disconnected(Me)
                Exit Sub
            End If
            AddToBuffer(_byteBuffer, intCount)
            'BuildString(_byteBuffer, 0, intCount)
            Array.Clear(_byteBuffer, 0, intCount)
            SyncLock _Client
                _Client.BeginReceive(_byteBuffer, 0, 1024, SocketFlags.None, _
                  AddressOf DoStreamReceive, Nothing)
            End SyncLock
        Catch ex As Exception
            Me.Close()
            ReDim _byteBuffer(1024)
            RaiseEvent Disconnected(Me)
        End Try
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Pc's Verbinden mittels System.Net.Sockets Teil13.008dj.tommy23.09.15 09:57
Re: Pc's Verbinden mittels System.Net.Sockets Teil51.297dj.tommy23.09.15 10:04
Re: Pc's Verbinden mittels System.Net.Sockets Teil21.249dj.tommy23.09.15 10:01
Re: Pc's Verbinden mittels System.Net.Sockets Teil31.326dj.tommy23.09.15 10:01
Re: Pc's Verbinden mittels System.Net.Sockets Teil41.237dj.tommy23.09.15 10:02
Re: Pc's Verbinden mittels System.Net.Sockets Teil61.264dj.tommy23.09.15 10:05
Glaube den grund gefunden zuhaben1.332dj.tommy24.09.15 17:34
Re: Glaube den grund gefunden zuhaben1.299ModeratorFZelle24.09.15 18:12
Re: Glaube den grund gefunden zuhaben1.259dj.tommy24.09.15 19:03
Re: Glaube den grund gefunden zuhaben1.356ModeratorFZelle24.09.15 23:31
Re: Glaube den grund gefunden zuhaben1.259dj.tommy25.09.15 00:37
Re: Glaube den grund gefunden zuhaben1.254sv0001025.09.15 05:51
Re: Glaube den grund gefunden zuhaben1.230ModeratorFZelle26.09.15 17:20
Re: Glaube den grund gefunden zuhaben1.206dj.tommy26.09.15 23:59
Re: Glaube den grund gefunden zuhaben1.348sv0001027.09.15 11:29

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