发送端:
FileStream fs = new FileStream(this.m_files2,FileMode.Open,FileAccess.Read,FileShare.Read);
IPAddress ip = IPAddress.Parse(ReceIP);      //对方IP
IPEndPoint endPoint = new IPEndPoint(ip,1002); Socket socket = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
socket.Connect(endPoint);

int iCount = (int)fs.Length;
byte[] buf = new byte[iCount];
int iSended = 0;       //已经发送的字节数
int iSending = 0;
int iBlock =1024;
fs.Read(buf,0,iCount); while(iSended < iCount)
{
if (iSended + iBlock <= iCount)
iSending = iBlock ;
else
iSending = iCount - iSended;

socket.Send(buf,iSended,iSending,SocketFlags.None); 
iSended += iSending;
}

fs.Close();
socket.Shutdown(SocketShutdown.Both);
socket.Close();接收端:
Socket hander1 = fileListener.Accept();        string strFile = m_saveFile; int iLen = Int32.Parse(this.ReceFileLen);//接收文件长度
int iReceiveded = 0 ;
int iReceiveing = 0 ;
byte [] buf = new byte[iLen] ;
FileStream fs = new FileStream(strFile,FileMode.Create,FileAccess.Write) ;
try
{
while(iReceiveded < iLen)
{
if (iReceiveded + iBlock <= iLen)
iReceiveing = iBlock ;
else
iReceiveing = iLen - iReceiveded; hander1.Receive(buf,iReceiveded,iReceiveing,SocketFlags.None);
iReceiveded += iReceiveing ;
} fs.Write(buf,0,iLen);
}
catch(Exception ex)
{
MessageBox.Show("接收文件失败: "+ex.Message) ;
}
finally
{
fs.Close();
hander1.Close();
}现在发送时执行到send时会出现:远程主机强迫关闭了一个现有连接, 不知是何原因?