我有一个程序用于数独的在线多重播放(不要问)。我编写了专门用于在应用程序实例之间设置特定tcpclient连接的代码,但是当我尝试使用本地主机(IP:127.0.0.1)测试它时,我收到了错误消息:
“无法建立连接,因为目标计算机主动拒绝它”
正好在尝试设置客户端时。无论如何,它使用相同的端口来监听发送,所以稍后这个方法会遇到麻烦但我需要测试我的解决方案所以我问:什么是最简单的方法(时间是一个因素)来测试网络程序在家。我可以访问以下内容:
通过xampp安装数据库的1台计算机(需要数据库)
最多2台没有数据库的其他计算机(可以安装)
谢谢。修改
'sets the destination IP to the HostAddress
IP = sender.CurrentRow.Cells.Item("HostAddress").Value
'creates a new instance of a client for send and recieving streams
client = New TcpClient(IP, port)
这是我初始化客户端的方式。在sub中,单击datagridview单元格,HostAddress包含主机的IP地址作为字符串。这是发生例外的第二行。
答案 0 :(得分:0)
您提供的信息太少,实际上无法帮助您找到错误,但是如果您的PC上的localhost上的基本连接正常,您可以尝试以下操作。创建两个控制台项目,一个是客户端和一个服务器,并插入以下代码:
<强>客户端强>
Imports System.Net.Sockets
Imports System.Net
Module Client
Sub Main()
Dim IP As IPAddress = IPAddress.Parse("127.0.0.1")
Console.WriteLine("Start server and then press any key to connect.")
Console.ReadKey()
Console.WriteLine("Connecting...")
Dim client As New Net.Sockets.TcpClient
client.Connect(IP, 6583)
Console.WriteLine("Connected!")
Console.ReadKey()
client.Close()
End Sub
End Module
服务器强>
Imports System.Net.Sockets
Imports System.Net
Module Server
Sub Main()
Dim IP As IPAddress = IPAddress.Parse("127.0.0.1")
Dim server As New TcpListener(IP, 6583)
server.Start()
Console.WriteLine("Waiting for connection...")
While server.Pending = False
End While
Dim connectedclient As TcpClient = server.AcceptTcpClient
Console.WriteLine("Client connected. Nice.")
Console.ReadKey()
End Sub
End Module
编译并启动项目。服务器启动后,它开始侦听localhost上的端口6583。启动客户端并按一个键,您应该看到消息说连接正常。 如果是,则代码有问题。如果没有,你应该检查你的防火墙设置和类似的东西。