我以前用vb做个聊天工具,用winsock
现在我想用c#重新,但是在vb里winsock里有很多自己定义好的事件比如,winsock1_datarive() 当对方发送数据来时会自动触发这个事件,我只要在这个事件里写就好了,请问c#里socket有这些事件吗>?
谢谢,
还有,那位高手可以给个连接的简单例子呢,就是有listen和connect语句就好,刚开始接触不知道从那里插手,谢谢了。
现在我想用c#重新,但是在vb里winsock里有很多自己定义好的事件比如,winsock1_datarive() 当对方发送数据来时会自动触发这个事件,我只要在这个事件里写就好了,请问c#里socket有这些事件吗>?
谢谢,
还有,那位高手可以给个连接的简单例子呢,就是有listen和connect语句就好,刚开始接触不知道从那里插手,谢谢了。
{
IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());
IPAddress ipAddress = ipHostInfo.AddressList[0];
IPEndPoint localEndPoint = new IPEndPoint(ipAddress, 9000);
try
{
Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
listener.Bind(localEndPoint);
while (true)
{
Thread.Sleep(10);
listener.Listen(0);
Socket sendSocket = listener.Accept();
if (sendSocket.Connected)
{
SocketHT.Add(sendSocket.Handle, sendSocket);
Console.WriteLine("Connected!");
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
我以前曾为了做这个东西,用WINSOCK控件来做,做到快吐血,要考虑数据的大小啦,还有延迟啦,真TMD的麻烦
因为现在不忙,所以想学c#,但是觉得只看书和做上面的例子没有太大的收获,所以想自己给自己弄点活干,看来也不容易啊,谢谢大家,