Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: ..::Carlos::.. en Enero 16, 2011, 03:39:15 am
-
hola primero que nada saludos a todos ;D, mi pregunta es :
por ejemplo tengo un rat multi conexion como hago para enviarle una funcion o paquete de datos a todos los conectados al mismo tiempo
gracias espero su respuesta ;)
-
Tenes que crear un bucle recorriendo todas las conexiones que tenes en el listview, pero antes de pasar a la siguiente conexion tenes que asegurarte de aver enviado todos los datos completos a la primera conexion para eso si es que utilizas el control winsock podes utilizar el evento Winsock1_SendComplete, o el Winsock1_SendProgress donde tenes que asegurarte que el paquete que enviaste llego completo.
SAludos.
-
GRACIAS BRO DEJA VER COMO ME VA ;)
-
Bro nada que lo logro
:(
Por ejemplo en tu remote administracion como seria asi
For i = 0 To FrmMain.ucListView1.Count
If FrmMain.ucListView1.ItemSelected(i) = id Then
FrmMain.ucListView1.ItemData(id) = it
WinSock32.SendData it, "5" & Delimiter & Text1.Text & Delimiter & Text2.Text
Exit For
End If
Next
-
Hola yo estoy agregando una constante para separa cada envio del for
WinSock32.SendData it, "5" & Delimiter & Text1.Text & Delimiter & Text2.Text & END_DATA
y despues para la parte del que recibe uso esto
Public Sub Socket_DataArrival(id As Long, IP As String, Puerto As String, Data As String)
On Error GoTo ErrHaddle
Dim lRet1 As Long
Dim lRet2 As Long
Dim sCommand As String
Dim sBuf As String
Dim vData() As String
m_Data = m_Data & Data
lRet1 = InStr(m_Data, END_DATA)
If lRet1 Then
sBuf = Left$(m_Data, lRet1 - 1)
m_Data = Mid$(m_Data, lRet1 + Len(END_DATA))
lRet2 = InStr(sBuf, Delimiter)
sCommand = Left$(sBuf, lRet2 - 1)
sBuf = Mid$(sBuf, lRet2 + 1)
Select Case sCommand
Case 0
Case 1
Case 2
End Select
If Len(m_Data) Then
If InStr(m_Data, END_DATA) Then Call Me.Socket_DataArrival(id, IP, Puerto, vbNullString)
End If
End If
ErrHaddle:
End Sub
despues segun el sCommand haces un Split(sBuf , Delimiter ) y obtenes los datos separados.