Visual Basic.NET - Ayuda con Socket Asincronos

   
Vista:

Ayuda con Socket Asincronos

Publicado por llAudioslavell (1 intervención) el 25/01/2012 18:20:01
Hola a todos de este gran foro...
estoy desarrollando una aplicacion utilizando socket asincronos, la aplicacion es simple .. solo conciste en aceptar peticiones de los clientes de una red Lan, despues ya pienso agregar mas cosas como mensajeria y cosas asi pero ahora solo quiero algo basico para ir entendiendo poco a poco.. estuve siguiendo tuoriales y entendiendo paso a paso:

Servidor:

Dim SocketServer As Socket
Dim SocketClient As Socket
Dim Bytesfrom(10024) As Byte

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

SocketServer = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
Dim ip As IPEndPoint = New IPEndPoint(IPAddress.Any, 1863)
SocketServer.Bind(ip)
SocketServer.Listen(2)
SocketServer.BeginAccept(New AsyncCallback(AddressOf Aceptar), SocketServer)

End Sub

Private Sub Aceptar(ByVal acp As IAsyncResult)
SocketServer = acp.AsyncState
SocketClient = SocketServer.EndAccept(acp)
SocketServer.BeginAccept(New AsyncCallback(AddressOf Aceptar), Nothing)

End Sub

Cliente:

Dim Bytesfrom(10024) As Byte
Dim SocketClient As Socket
Dim IPAddres As IPAddress

Private Sub Conectar(ByVal ar As IAsyncResult)
SocketClient = ar.AsyncState
SocketClient.EndConnect(ar)
End Sub

Private Sub BTN_CONECTAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTN_CONECTAR.Click

SocketClient = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
IPAddres = IPAddress.Parse(txt_ip.Text)
Dim PuertoIP As IPEndPoint = New IPEndPoint(IPAddres, 1863)
SocketClient.BeginConnect(PuertoIP, New AsyncCallback(AddressOf Conectar), Nothing)

If SocketClient.Connected = True Then
MsgBox("conectado")
Else
MsgBox("No se logro la conexion")
End If
End Sub

es algo simple .. pero no logro conectar el cliente al servidor.. tuve una idea y agregue esa ultima condicion "If SocketClient.Connected = True Then" y al tratar de conectar pues me va directo al "ELSE" .. nose en donde esta el problema talves ustedes me puedan ayudar en esto.... espero sus aportes ya que esto tambien servira para los que estean intentando crear una aplicacion como esta.. gracias de antemano ^^
salu2 !!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder