Socket应用程序设计

Socket应用程序设计

ID:40713969

大小:315.50 KB

页数:21页

时间:2019-08-06

Socket应用程序设计_第1页
Socket应用程序设计_第2页
Socket应用程序设计_第3页
Socket应用程序设计_第4页
Socket应用程序设计_第5页
资源描述:

《Socket应用程序设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、华南农业大学理学院课程实验(设计)报告专业年级:11信息与计算科学3班学生学号:201130760305学生姓名:陈泽斌实验题目:Socket应用程序设计指导老师:蔡贤资实验时间:2013/12/10目录一、题目,时间,专业年级,实验人1二、实验内容与要求1三、实验过程2四、实验结果2五、总结与分析15六、参考文献16七、分工表及其他附录16一、题目,时间,专业年级,实验人(1)题目:Socket应用程序设计(2)时间:2013、12、10(3)专业年级:11级信息与计算科学3班(4)实验人:陈泽斌、林国梁、衣毅二、实验内容与要

2、求(1)内容:基于Windows平台建立一个基于TCP/IP协议的网络通讯小程序。(2)要求:①能进行用户管理,所有用户必须登录到服务器,由服务器维护在线信息;②IM功能:用户登录后进行实时多方点到点信息通信,如聊天;③能选择要求服务器进行转发服务;④能保存通信记录到数据库;⑤能进行双方传输,能显示进度;*⑥支持断点重传,检查时需要有功能随时中断传送,并在下次启动时能显示重传状态;*⑦数据包加密;*⑧实时语音双方传送功能;*⑨多方通话功能;17⑩界面设计要求布局合理,信息清晰。三、实验过程(1)讨论并选择C#语言编写,对实验的功

3、能进行分工,具体的细节如附表分工。(2)各自对程序的功能进行编程,具体实现看实验结果分析。(3)功能合并,调试修改。四、实验结果(1)服务器:关键代码:listenclientlc=newlistenclient(listener);ThreadStartserverThreadstart=newThreadStart(lc.serverthreadpro);17Threadserverthread=newThread(serverThreadstart);serverthread.IsBackground=true;serve

4、rthread.Start();解析:新建一个线程处理客户端链接请求,达到多用户进行连接,链接上后对服务端的数据进行在线信息与IP的更新。Timertime=newSystem.Timers.Timer();time.Interval=1000;time.Elapsed+=newSystem.Timers.ElapsedEventHandler(time_Elapsed);time.AutoReset=true;time.Enabled=true;time.Start();解析:建一个时钟,每隔一定时间就对客户端进行检测,同时更

5、新客户端的好友数据在线和IP信息。TcpListenerlistener2=newTcpListener(IPAddress.Parse(address),1253);listener2.Start();解析:新建一个监听客户端发过来的代理离线信息,同时登录的时候也会检测服务器数据库是否有离线信息,有的话就会转发给客户端;(2)登录界面:17注册界面:关键代码:tcpclient.Connect(IPAddress.Parse(serverip.getServer()),port);networkstream=tcpclient

6、.GetStream();stringcmm="CONNECT

7、"+textBox1.Text+"

8、"+textBox2.Text+"

9、";Byte[]bytes=System.Text.Encoding.Unicode.GetBytes(cmm.ToCharArray());networkstream.Write(bytes,0,bytes.Length);17len=networkstream.Read(buff,0,buff.Length);msg=System.Text.Encoding.Unicode.GetStrin

10、g(buff,0,len);string[]acceptFromServer=msg.Split(newChar[]{'

11、'});解析:将登录的账号和密码发送给服务器,同时对服务器发回来的信息进行解读。(3)功能界面:关键代码:Timertime=newSystem.Timers.Timer();time.Interval=2000;time.Elapsed+=newSystem.Timers.ElapsedEventHandler(wt);17time.AutoReset=true;time.Enabled=true;time

12、.Start();TcpListenerlistener=newTcpListener(IPAddress.Parse(clientipid.getClientip()),1235);listener.Start();listenlt=newlisten(lis

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。