任何人都可以帮助我。我试图使用下面的代码在tcp上发送数据(最初只是一个字符串)。这只是一个初步测试,看我可以使用TcpClient写入端口,然后立即读取发送的数据。代码工作,我可以发送一个字符串,并阅读它。
但是,它突然停止了以下错误: {“远程主机强行关闭现有连接”} 错误代码10054
在我看来,我没有关闭现有连接,或者我已超过允许的最大连接数。
使用netstat我只能看到一个正在侦听我的IP地址的tcp端口。这是我一直在使用的端口,正如我上面说的那样它起作用然后突然停止工作,反而产生了上述错误。
我以这种方式发送和接收数据的知识非常有限。
任何人都可以帮我找到解决方案吗?要么修复上面的代码或端口,那么我可以再次读取发送的字符串。或者,如果有人有任何其他代码建议通过TCP发送和接收xml?非常感谢。
非常感谢。
String response = String.Empty;
TcpClient client = new TcpClient(hostname, port);
stream = client.GetStream();
StreamWriter writer = new StreamWriter(stream, Encoding.UTF8);
writer.AutoFlush = false;
writer.Write(Encoding.UTF8.GetBytes(message).Length);
writer.Write(message);
writer.Flush();
StreamReader reader = new StreamReader(stream, Encoding.UTF8);
response = reader.ReadLine();
Console.WriteLine(response);
stream.Close();
答案 0 :(得分:0)
您的代码似乎很好。在我的工作项目中,我使用了几乎相同的代码。我建议你检查以下内容: