【发布时间】:2015-03-02 23:43:12
【问题描述】:
我有一个应用程序使用 TCP 连接进行通信。 在 Windows 7 机器上使用此应用程序时,它将发送数据。但是当我在 Windows 8.1 机器上使用相同的应用程序时,它会连接到服务器,但不会发送数据。
我检查了应用程序如何连接到服务器,在 Windows 7 和 8.1 上是一样的。
知道为什么会出现这个问题吗?
这里是连接类的代码:
public class TcpCon
{
private TcpClient tcpClient;
public bool Connected
{
get
{
if(tcpClient != null)
return tcpClient.Connected;
return false;
}
}
public void Connect(String ipAddr, int port)
{
if (tcpClient == null)
{
tcpClient = new TcpClient();
tcpClient.Connect(ipAddr, port);
}
}
public void Disconnect()
{
if (tcpClient != null)
{
tcpClient.Close();
}
}
public void Send(Byte[] byteArr)
{
NetworkStream strWrite = tcpClient.GetStream();
if (strWrite.CanWrite)
{
strWrite.Write(byteArr, 0, byteArr.Length);
strWrite.Flush();
}
}
}
【问题讨论】:
-
您甚至没有包含任何实际尝试发送任何内容的代码,更不用说您提供了 complete 代码示例(对于网络问题,需要同时包含服务器和一个客户)。请参阅stackoverflow.com/help/mcve 了解详细信息,包括仍然完整的简洁、最小 代码示例的重要性。鉴于到目前为止的信息,您的具体问题的底线:如果您可以成功连接,但有其他问题,则几乎可以肯定您在客户端或服务器中存在错误。缺少代码,没有人能指出错误。
标签: c# network-programming tcpclient