正在尝试启动侦听器套接字
本文关键字:侦听器 套接字 启动 | 更新日期: 2023-09-27 18:19:51
我试着按照MSDN上的exmaple创建一个异步服务器。但似乎没有什么能连接到它
http://msdn.microsoft.com/en-us/library/5w7b7x5f.aspx
这是我的。。。
还要注意AddressList[2],这不是一个错误;)
private static Socket mListenerSocket;
IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());
IPEndPoint localEP = new IPEndPoint(ipHostInfo.AddressList[2], port);
// This line outputs 192.168.0.6:6809 (which is correct)
Console.WriteLine("{0}", localEP.ToString());
mListenerSocket = new Socket(
ipHostInfo.AddressList[2].AddressFamily,
SocketType.Stream,
ProtocolType.Tcp);
mListenerSocket.Bind(localEP);
mListenerSocket.Listen(10);
mListenerSocket.BeginAccept(new AsyncCallback(AcceptCallback), mListenerSocket);
我的回调方法定义为:
private static void AcceptCallback(IAsyncResult ar)
{
// It does not even get here
mListenerSocket.EndAccept(ar);
}
我希望当我使用"telnet 192.168.0.6 6809"进行telnet时,它应该跳到AcceptCallback方法,但它没有,所以没有建立连接。
有什么想法为什么它不起作用吗?没有错误可以帮助我:(
我尝试过使用TcpListener,但再次失败:(
mListenerSocket = new TcpListener(IPAddress.Any, port);
mListenerSocket.Start();
mListenerSocket.BeginAcceptSocket(new AsyncCallback(AcceptCallback), mListenerSocket);
我的防火墙阻止了与客户端的连接。即使我禁用了它,我也必须重新启动Visual Studio才能捕获它