T
Terry Olsen
I've tried the following code straight out of MSDN. But my app still blocks
while listening. Isn't this code supposed to keep the UI responsive while
listening? Or maybe I'm not doing it right.... any help is begged for ;-)
Public Class Listener
Public Event Connected(ByVal client As TcpClient)
Public ClientConnected As New ManualResetEvent(False)
Public Sub DoBeginAcceptTcpClient()
Dim myListener As New TcpListener(IPAddress.Parse("127.0.0.1"), 23)
myListener.Start()
ClientConnected.Reset()
myListener.BeginAcceptTcpClient(New AsyncCallback(AddressOf
DoAcceptTcpClientCallback), myListener)
ClientConnected.WaitOne()
End Sub
Public Sub DoAcceptTcpClientCallback(ByVal ar As IAsyncResult)
Dim myListener As TcpListener = CType(ar.AsyncState, TcpListener)
Dim client As TcpClient = myListener.EndAcceptTcpClient(ar)
RaiseEvent Connected(client)
ClientConnected.Set()
End Sub
End Class
while listening. Isn't this code supposed to keep the UI responsive while
listening? Or maybe I'm not doing it right.... any help is begged for ;-)
Public Class Listener
Public Event Connected(ByVal client As TcpClient)
Public ClientConnected As New ManualResetEvent(False)
Public Sub DoBeginAcceptTcpClient()
Dim myListener As New TcpListener(IPAddress.Parse("127.0.0.1"), 23)
myListener.Start()
ClientConnected.Reset()
myListener.BeginAcceptTcpClient(New AsyncCallback(AddressOf
DoAcceptTcpClientCallback), myListener)
ClientConnected.WaitOne()
End Sub
Public Sub DoAcceptTcpClientCallback(ByVal ar As IAsyncResult)
Dim myListener As TcpListener = CType(ar.AsyncState, TcpListener)
Dim client As TcpClient = myListener.EndAcceptTcpClient(ar)
RaiseEvent Connected(client)
ClientConnected.Set()
End Sub
End Class