我正在为我的一个项目制作一个tcp监听器,不知什么原因,当我运行调试版时,它无法工作,但当我发布并构建它时,它却能正常工作,这对调试来说真的很不方便。我查看了构建属性,调试版和发布版的构建结果是一样的,有人知道这是怎么回事吗?
监听器是一个windows控制台
编辑:调试版的运行只是没有检测到连接,但我的发布版却检测到了。
这是我处理连接SERVER的代码。
private void AcceptCallback(IAsyncResult ar)
{
Socket socket;
try
{
socket = server.EndAccept(ar);
}
catch (ObjectDisposedException)
{
return;
}
userList.Add(new Users(socket.RemoteEndPoint.ToString(), socket));
Log.Success("Client Connected!");
sendAdminsLog("GREEN " + "Client Connected!");
socket.BeginReceive(g_buffer, 0, g_buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveCallback), socket);
server.BeginAccept(new AsyncCallback(AcceptCallback), null);
}
CLIENT:
Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
client.Connect(IPAddress.Parse("73.73.34.126"), 1234);//IPAddress.Loopback, 1234);
貌似windows防火墙有时会阻挡端口,禁用它就可以了。