Me imagino que estas usando un array de sockets... bien si es asi puedes usar el index de cada evento, por ejemplo el del DataArrival y agregar el index al listbox, mas o menos asi...
y cuando quieras mandar X dato a X nombre usas el index del listbox
para saber que sockets estan conectados puedes poner un timer que recorra todos los sockets y comprobar si esta conectados
veras que es muy facil si lo entiendes, salu2
Código (vb) [Seleccionar]
Private Sub Winsock1_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim Nombre As String
Winsock1(Index).GetData Nombre
List1.AddItem Nombre, Index 'Se agrega el nombre y el index del socket a la lista
End Sub
y cuando quieras mandar X dato a X nombre usas el index del listbox
Código (vb) [Seleccionar]
Winsock1(List1.ListIndex).SendData Datos
para saber que sockets estan conectados puedes poner un timer que recorra todos los sockets y comprobar si esta conectados
Código (vb) [Seleccionar]
Private Sub Timer1_Timer()
dim N as long
for N = lbound(Winsock1) to ubound(Winsock1)
if Winsock1(N).State = 7 then List1.AddItem N 'si esta conectad agregamos solo el index a la lista o haces lo que quieras xP
next
End Sub
veras que es muy facil si lo entiendes, salu2
![:P :P](https://forum.elhacker.net/Smileys/navidad/tongue.gif)