服务端:
? ? ? ? private void PCQServiceForm_Load(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? TcpListener tcpListenerOut = new TcpListener(IPAddress.Any, Convert.ToInt32(txtPort.Text)); ? ? ? ? ? ? tcpListenerOut.Start(); ? ? ? ? ? ? Thread thread = new Thread(SendFileOutFunc); ? ? ? ? ? ? thread.Start(tcpListenerOut); ? ? ? ? ? ? thread.IsBackground = true; ? ? ? ? }
? ? ? ? public void SendFileOutFunc(object obj) ? ? ? ? { ? ? ? ? ? ? TcpListener tcpListener = obj as TcpListener; ? ? ? ? ? ? while (true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? try ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? TcpClient tcpClient = tcpListener.AcceptTcpClient(); ? ? ? ? ? ? ? ? ? ? if (tcpClient.Connected) ? ? ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? #region 发送 ? ? ? ? ? ? ? ? ? ? ? ? NetworkStream ns = tcpClient.GetStream(); ? ? ? ? ? ? ? ? ? ? ? ? if (ns.CanWrite) ? ? ? ? ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? ? ? Byte[] sendBytes = Encoding.UTF8.GetBytes(txtSend.Text); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ns.Write(sendBytes, 0, sendBytes.Length); ? ? ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? ? ? ? ? ns.Close(); ? ? ? ? ? ? ? ? ? ? ? ? #endregion
? ? ? ? ? ? ? ? ? ? ? ? #region 接收 ? ? ? ? ? ? ? ? ? ? ? ? //NetworkStream stream = tcpClient.GetStream(); ? ? ? ? ? ? ? ? ? ? ? ? //StreamReader sr = new StreamReader(stream); ? ? ? ? ? ? ? ? ? ? ? ? //string result = sr.ReadToEnd(); ? ? ? ? ? ? ? ? ? ? ? ? //stream.Flush(); ? ? ? ? ? ? ? ? ? ? ? ? //stream.Close(); ? ? ? ? ? ? ? ? ? ? ? ? //tcpClient.Close(); ? ? ? ? ? ? ? ? ? ? ? ? //tcpListener.Stop(); ? ? ? ? ? ? ? ? ? ? ? ? #endregion ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? catch (Exception ex) ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? OperaterLog.WriteLog("SendFileFunc.ex:" + ex.Message); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? } ? ? ? ? }
客户端:
? ? ? ? private void tmrReceive_Tick(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Parse(txtIP.Text), Int32.Parse(txtPort.Text)); ? ? ? ? ? ? TcpClient tcpClient = new TcpClient(); ? ? ? ? ? ? try ? ? ? ? ? ? { ? ? ? ? ? ? ? ? tcpClient.Connect(ipEndPoint);
? ? ? ? ? ? ? ? if (tcpClient.Connected) ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? #region 发送 ? ? ? ? ? ? ? ? ? ? //NetworkStream ns = tcpClient.GetStream(); ? ? ? ? ? ? ? ? ? ? //if (ns.CanWrite) ? ? ? ? ? ? ? ? ? ? //{ ? ? ? ? ? ? ? ? ? ? // ? ?Byte[] sendBytes = Encoding.UTF8.GetBytes(txtSend.Text); ? ? ? ? ? ? ? ? ? ? // ? ?ns.Write(sendBytes, 0, sendBytes.Length); ? ? ? ? ? ? ? ? ? ? //} ? ? ? ? ? ? ? ? ? ? //ns.Close(); ? ? ? ? ? ? ? ? ? ? #endregion
? ? ? ? ? ? ? ? ? ? NetworkStream stream = tcpClient.GetStream(); ? ? ? ? ? ? ? ? ? ? #region? ? ? ? ? ? ? ? ? ? ? StreamReader sr = new StreamReader(stream); ? ? ? ? ? ? ? ? ? ? string result = sr.ReadToEnd(); ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? txtReceive.Text += result + "\r\n";
? ? ? ? ? ? ? ? ? ? stream.Flush(); ? ? ? ? ? ? ? ? ? ? stream.Close(); ? ? ? ? ? ? ? ? ? ? #endregion ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? #region 接收 ? ? ? ? ? ? ? ? #endregion ? ? ? ? ? ? } ? ? ? ? ? ? catch (Exception ex) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? OperaterLog.WriteLog("AutoGradeOperaterForm.ReceiveFileFunc.ex:" + ex.Message); ? ? ? ? ? ? } ? ? ? ? }
|