Tema destacado: [Overclocking] Récords de overclock del foro
Autor
|
Tema: Problema con conexion en protocolo MSN (Leído 4,904 veces)
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
Veran tengo un codigo tal que asi: Private Sub cmdenviar_Click() wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" End Sub Private Sub Form_Load() wsk.Close wsk.Protocol = sckTCPProtocol wsk.RemoteHost = "messenger.hotmail.com" wsk.RemotePort = 1863 wsk.Connect End Sub Private Sub Timer1_Timer() MsgBox wsk.State End Sub Private Sub wsk_DataArrival(ByVal bytesTotal As Long) Dim devu As String wsk.GetData devu MsgBox devu txtdevu.Text = txtdevu.Text & vbCrLf & devu End Sub no se alarmen, es para realizar pruebas, lo hice lo mas simple posible el caso es que, coge la conexion y conecta ya que el numero del estado del winsock es 7 que corresponde a conectado, el problema esta al enviar los datos, ya que el enviar, deberia de responderme inmediatamente el servidor de msn, yo le mando esto: VER 1 MSNP9 MSNP8 CVR0 me debe responder, pero no lo hace, en cambio si realizo la conversacion por netcat:  funciona que de malo hay en el codigo? no alcance a verlo, seguro que es una tonteria o la peor cosa que me pudiese pasar, como si google hubiese capado el paso de alguna manera
|
|
|
|
|
En línea
|
|
|
|
|
Karcrack
|
Utiliza el evento OnConnect para estas cosas 
|
|
|
|
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
como te refieres asi? Private Sub Form_Load() wsk.Close wsk.Protocol = sckTCPProtocol wsk.RemoteHost = "messenger.hotmail.com" wsk.RemotePort = 1863 wsk.Connect End Sub Private Sub Timer1_Timer() MsgBox wsk.State End Sub Private Sub wsk_Connect() wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" End Sub Private Sub wsk_DataArrival(ByVal bytesTotal As Long) Dim devu As String wsk.GetData devu MsgBox devu txtdevu.Text = txtdevu.Text & vbCrLf & devu End Sub
|
|
|
|
|
En línea
|
|
|
|
|
Karcrack
|
Exacto, y lo del Timer seria mejor un Debug.Print... para no parar la ejecucion y hacer un TimeOut con el servidor del MSN...
|
|
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
y añadir crlf al final de cada peticion no estaria mal. y ya que es para el botnet no seria mejor usar el protocolo del msn por http?
|
|
|
|
« Última modificación: 7 Abril 2010, 23:00 por ctlon »
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
no funciona ni con el evento karcrack, el caso es que en netcat si, y no pasa nada que lo envies un poco tarde, tiene tiempo limite pero no tanto
|
|
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
no se me lee? wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" & vbCrLf y a funcionar 
|
|
|
|
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
lo siento ctlon te debimos haber hecho caso, asi funciona: Private Sub Form_Load() wsk.Close wsk.Protocol = sckTCPProtocol wsk.RemoteHost = "messenger.hotmail.com" wsk.RemotePort = 1863 wsk.Connect End Sub Private Sub Timer1_Timer() MsgBox wsk.State End Sub Private Sub wsk_Connect() wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" & vbCrLf End Sub Private Sub wsk_DataArrival(ByVal bytesTotal As Long) Dim devu As String wsk.GetData devu MsgBox devu txtdevu.Text = txtdevu.Text & vbCrLf & devu End Sub
|
|
|
|
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
tengo otro problema, sorry por doble post pero sino esto se da por solucionado,dejo el code Private Sub Form_Load() wsk.Close wsk.Protocol = sckTCPProtocol wsk.RemoteHost = "messenger.hotmail.com" wsk.RemotePort = 1863 wsk.Connect End Sub Private Sub wsk_Connect() wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" & vbCrLf End Sub Private Sub wsk_DataArrival(ByVal bytesTotal As Long) Dim devu, arrays() As String Dim comprobando As Integer wsk.GetData devu txtdevu.Text = txtdevu.Text & vbCrLf & devu MsgBox devu comprobando = InStr(1, devu, "VER") If comprobando <> 0 Then wsk.SendData "CVR 2 0x0C0A winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS soler-cueto@hotmail.com" & vbCrLf Exit Sub End If comprobando = InStr(1, devu, "CVR") If comprobando <> 0 Then wsk.SendData "USR 3 TWN I soler-cueto@hotmail.com" & vbCrLf Exit Sub End If comprobando = InStr(1, devu, "XFR") If comprobando <> 0 Then MsgBox entra arrays = Split(devu, " ") MsgBox arrays(3) Exit Sub End If End Sub envio esto al principio: wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" & vbCrLf la cosa es que no sale bien, es asi como sale: ??????P8 y deberia salir asi VER 1 MSNP8 que puede pasar?
|
|
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
Private Sub wsk_DataArrival(ByVal bytesTotal As Long) Dim devu [b]As String[/b], arrays() As String .... .... ....
|
|
|
|
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
no te entendi ctlon, a que te refieres?
|
|
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
en tu codigo declaras devu sin tipo de dato y si no recuerdo mal vb asume que es variant, definela como string y veras que funciona bien.
|
|
|
|
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
:O pense en toda mi vida que se podian definir dos a la vez, por ej
dim devu,pavo as string
y que los dos eran string
que chasco, el otro dia me paso lo mismo, mi cobaya se llama micky y es una tia :S
necesito atencion medica
|
|
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
si tienes razon, ni continue mirando el codigo despues de ver eso. en este caso inicializa el buffer de la variable con space y tb tiene que funcionar.
|
|
|
|
|
En línea
|
|
|
|
50l3r
Desconectado
Mensajes: 758
Todo lo que se por la cuarta parte que desconozco
|
ahora me ocurre el siguiente problema, voy comentandote: Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) 'espera Private Sub Form_Load() Call conectar("messenger.hotmail.com") End Sub Private Sub wsk_Connect() wsk.SendData "VER 1 MSNP9 MSNP8 CVR0" & vbCrLf End Sub Private Sub wsk_DataArrival(ByVal bytesTotal As Long) Dim arrays() As String Dim devu As String Dim comprobando As Integer wsk.GetData devu txtdevu.Text = txtdevu.Text & vbCrLf & devu MsgBox devu comprobando = InStr(1, devu, "VER") If comprobando <> 0 Then wsk.SendData "CVR 2 0x0C0A winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS soler-cueto@hotmail.com" & vbCrLf Exit Sub End If comprobando = InStr(1, devu, "CVR") If comprobando <> 0 Then wsk.SendData "USR 3 TWN I soler-cueto@hotmail.com" & vbCrLf Exit Sub End If comprobando = InStr(1, devu, "XFR") If comprobando <> 0 Then arrays = Split(devu, " ") arrays = Split(arrays(3), ":") If arrays(0) <> "" Then Call conectar(arrays(0)) wsk.SendData "VER 4 MSNP9 MSNP8 CVR0" & vbCrLf End If Exit Sub End If End Sub Public Function conectar(ByVal ipe As String) wsk.Close wsk.Protocol = sckTCPProtocol wsk.Connect ipe, 1863 End Function al iniciar el formulario lo que hago es llamar a la funcion conectar pasandole la ip o el nombre de host del servidor, el primero en pasar es messenger.hotmail.com, luego de pasarlo, el evento connect se activa y manda el primer paquetem que son respondidos y se van sucediendo una serie de encadenaciones, al llegar al ultimo paquete, se tiene que volver a hacer otra conexion con una ip que te dan y que cogo con unos split, pero la conexion se queda en conectando alguna sugerencia de lo que peuda seR?
|
|
|
|
|
En línea
|
|
|
|
|
|