Hola, gracias por contestar. Estoy buscando algún ejemplo con el protocolo de msn pero no veo nada para vb2008, me podrías poner un ejemplo sencillo para ver como funciona! Gracias!
Bueno para empezar debes leer este pdf básico del protocolo messenger:
http://www.telefonica.net/web2/telamarinera/docus/protocolo_msn.pdfDeacuerdo a ello puedes construir tu aplicación, que se basa en envio y recepción mediante Sockets, modificando un ejemplo del msdn te dejo uno hecho a la rápida de como enviar y recibir los 2 primeros comandos del protocolo en vb.net.
Imports System.Net.Sockets
Module Module1
Sub Main()
Connect("messenger.hotmail.com", "VER 1 MSNP9 MSNP8 CVR0" & vbCrLf, "CVR 2 0x0C0A winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS cuenta@hotmail.com" & vbCrLf)
End Sub
Sub Connect(ByVal server As [String], ByVal message As [String], ByVal message2 As [String])
Try
Dim port As Int32 = 1863
Dim client As New TcpClient(server, port)
Dim data As [Byte]() = System.Text.Encoding.ASCII.GetBytes(message)
Dim data1 As [Byte]() = System.Text.Encoding.ASCII.GetBytes(message2)
Dim stream As NetworkStream = client.GetStream()
stream.Write(data, 0, data.Length)
Console.WriteLine("Sent: {0}", message)
data = New [Byte](256) {}
Dim responseData As [String] = [String].Empty
Dim bytes As Int32 = stream.Read(data, 0, data.Length)
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes)
Console.WriteLine("Received: {0}", responseData)
stream.Write(data1, 0, data1.Length)
Console.WriteLine("Sent: {0}", message2)
bytes = stream.Read(data, 0, data.Length)
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes)
Console.WriteLine("Received: {0}", responseData)
stream.Close()
client.Close()
Catch e As ArgumentNullException
Console.WriteLine("ArgumentNullException: {0}", e)
Catch e As SocketException
Console.WriteLine("SocketException: {0}", e)
End Try
Console.WriteLine(ControlChars.Cr + " Press Enter to continue...")
Console.Read()
End Sub
End Module
La explicación esta en el .pdf que mencioné y mencionar que debes tener una variable int que se incremente con cada comando que envies (eso tb esta explicado en el .pdf), luego para adenatrarte más debes buscar los sitios no oficiales de este protocolo para profundizar y mejorar tu aplicación.
Como escribió @seba123neo hay muchos ejemplos, puedes pasarlos a vb.net para mejorarlos.