如何在同一台电脑上调试TCP连接?

我写了一个服务器端程序A.exe,用一个TCPListener监听了本机的2185端口。
具体的语句是: TcpListener listener = new TcpListener(IPAddress.Any,2185);
我在另一个客户端程序B.exe中,用TcpClient尝试连接服务器。
具体的语句是:TcpClient.Connect(IPAddress.Parse(服务器IP), 2185);
如果在两台不同的电脑上可以连接,但如果在同一台电脑上,将服务器IP改为127.0.0.1就出错了。
错误信息是“通常每个套接字地址(协议/网络地址/端口)只允许使用一次”。
我猜测应该是2185端口被占用引起的冲突错误,但应该怎么解决呢?
因为客户端程序也需要在服务器上正常运行的啊……
求前辈们指点!谢谢。

第1个回答  2013-09-24
telnet localhost 2185
第2个回答  2013-09-24
不应该有这种问题,估计还是你的代码问题,相关代码贴一下看看。
第3个回答  2013-09-24
不知道用虚拟机能不能解决你的问题追问

不行的……

服务器端不可能装在虚拟机里。
若是为了在服务器机上运行客户端而装个虚拟机,那也太…… 真说不过去。
另外,类似的问题很多地方都会遇到,我也想学会怎么解决。

相似回答