客户端往服务器短发信息
2010-05-11 17:28
148 查看
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net; using System.Net.Sockets; namespace TcpSend { /// <summary> /// 客户端 /// </summary> public partial class FrmSend : Form { Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); public FrmSend() { InitializeComponent(); } /// <summary> /// 发送消息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSend_Click(object sender, EventArgs e) { if (socket.Connected) BeginSend(); else MessageBox.Show("请先连接服务器!", "提示"); } /// <summary> /// 连接服务器 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnConn_Click(object sender, EventArgs e) { IPAddress serverIp = IPAddress.Parse("192.168.0.3"); IPEndPoint iep = new IPEndPoint(serverIp, 2222); socket.Connect(iep); //连接服务器 } private void BeginSend() { byte[] byteMessage; byteMessage = Encoding.UTF8.GetBytes(rBoxContent.Text); socket.Send(byteMessage); } /// <summary> /// 窗口关闭时释放socket /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void FrmSend_FormClosing(object sender, FormClosingEventArgs e) { if (socket.Connected) socket.Shutdown(SocketShutdown.Both); socket.Close(); } } }
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net.Sockets; using System.Threading; using System.Net; namespace TcpReceive { /// <summary> /// 服务器端 /// </summary> public partial class FrmReceive : Form { TcpListener listener = new TcpListener(new IPEndPoint(IPAddress.Any, 2222)); //2222端口 public FrmReceive() { InitializeComponent(); listener.Start(); //开始侦听端口 Thread acceptThread = new Thread(new ThreadStart(AcceptWorkThread)); acceptThread.Start(); //接受客户端请求 } /// <summary> /// 接收、解码 /// </summary> private void AcceptWorkThread() { Socket socket = listener.AcceptSocket(); byte[] buffer = new byte[1024]; while (true) { int receiveCount = socket.Receive(buffer); if (receiveCount > 0) { string recString = Encoding.UTF8.GetString(buffer, 0, receiveCount); //解码 ShowMsg(recString); } else { socket.Close(); break; } } } /// <summary> /// 显示接收到的消息内容 /// </summary> /// <param name="text"></param> public void ShowMsg(string text) { rBoxRecevie.Text = text; } } }
源码下载:http://download.csdn.net/source/2341105
相关文章推荐
- Qt中利用TCP实现多个客户端之间相互发送消息系以及服务器的群发信息
- JSP获取客户端和服务器信息
- 查询信息的服务器 客户端设立 支持并发多线程
- PHP获取客户端、PHP获取服务器相关信息
- Unix网络编程卷一: 从服务器获取时间信息(三)-daytimetcpcli2客户端每次执行结果不同
- 服务器向客户端返回的常见状态码和提示信息
- c++服务器通过socket接收安卓客户端发来信息时乱码的处理
- 客户端遍历服务器的信息(比如滤镜效果显示新闻)
- ASP.NET获取客户端及服务器的信息
- PHP获取客户端,PHP获取服务器相关信息
- 在.NET中获取获取服务器电脑名,获取用户信息,获取客户端电脑名,获取客户端电脑IP收藏。
- PHP获取客户端、PHP获取服务器相关信息
- App-V客户端出现“无法从服务器中更新发布信息”错误
- ASP.NET获取客户端及服务器的信息
- ASP.NET获取客户端及服务器的信息
- PHP获取客户端、服务器信息
- go 语言 TCP服务器接受客户端字符串信息
- (转)ASP.NET获取客户端及服务器的信息
- 通过新浪IP服务器获得的当前客户端IP地址对应的国家、省份或直辖市、城市信息
- ubus客户端向服务器请求信息的例子