为什么我无法成功创建TCPListener

时间:2014-04-02 23:51:36

标签: vb.net tcpclient

我正在关注MSDN教程here,其中详细介绍了如何制作基本的客户端 - 服务器TCP聊天程序。

我已经有了所有的代码,并且它正在编译,但是当我尝试创建新的TcpListener对象时,我在socketClient类中遇到了一个问题。

教程说要使用这一行:

mobjClient = New TcpClient("localhost", 5000)

然而,在运行时,我收到错误:

  

System.dll中出现未处理的“System.Net.Sockets.SocketException”类型异常   其他信息:数据库查找期间发生不可恢复的错误

使用构造函数的主机名部分,我得到以下相同的消息作为参数。函数调用正确返回机器的名称。

(System.Net.Dns.GetHostName(), 5000)

我也尝试过使用机器的IP,分别为127.0.0.1和它的实际IP。使用IP会产生稍微不同的错误

  

System.dll中出现未处理的“System.Net.Sockets.SocketException”类型异常   其他信息:提供了无效参数

我还发现this link是其他人使用相同的教程,它提供了完整的代码。

2 个答案:

答案 0 :(得分:2)

找到了部分解决方案on this answer

显然,VS.net对于程序集在网络位置上运行这一事实非常挑剔。虽然上述链接问题并不相同,但它确实相关,因为将项目移动到本地驱动器会导致TCPListener正常工作。

我现在有其他错误可以解决,但我相信它们是无关的。我也无法得到他的app.config解决方案来解决我的问题。只有通过复制到本地磁盘才能运行程序。

答案 1 :(得分:0)

mobjClient作为新的TcpClient(" localhost",5000)