2014年7月17日星期四

关于Socket编写简单聊天工具的总结(原创) - 火悬崖

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
关于Socket编写简单聊天工具的总结(原创) - 火悬崖  阅读原文»

这段时间再看socket编程,虽然现在是刚刚接触,但是还是忍不住想写一篇总结,来激励自己努力学习,写的不好的地方,还请大家指教啊!

下面针对一个简单的发送消息和文件的程序说说吧。 首先是服务器需要准备二个Socket和二个Thread如下:

//和客户机进行通信
private Socket sckCommit;
//监听客户机
private Socket sckListen;
private Thread thdListen;
private Thread thdCommit;

对客户机的监听和通信放在二个单独的线程中,服务端的简单界面如下:

点击启动按钮时调用下面的函数:

#region 初始化监听
//初始化监听
public void Listen()
{
try
{
string ip = txtIp.Text.Trim();
string port = txtPort.Text.Trim();
//创建IP地址
IPAddress ipaddress = IPAddress.Parse(ip);
//创建IP节点
IPEndPoint endpoint = new IPEndPoint(ipaddress, int.Parse(port));
//创建套接字
sckListen = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//绑定IP节点
sckListen.Bind(endpoint);
sckListen.Listen(
10);//10为同时最大连接数

//在单独的线程里监听
thdListen = new Thread(Watch);
thdListen.IsBackground
= true;
thdListen.Start();
ShowMsg(
"服务器启动.................");
}
catch (Exception ex)
{
ShowErr(ex);
}
}

没有评论:

发表评论