- 4
- 0
- 约2.89万字
- 约 36页
- 2017-10-02 发布于湖北
- 举报
郑州轻工业学院
实训报告
实训名称:网络聊天程序指导教师:姓名:学号:班级:提交日期:
实训目的
通过开发一款网络聊天程序,熟练掌握多线程编程技术和TCP应用编程技术。
通过本实训,应达到如下目标:
理解委托的概念,掌握线程之间通过委托与控件交互的方法。
理解异常处理的机制,掌握异常处理语句的用法。
理解线程的概念,掌握多线程编程的一般方法。
掌握基于TCP的应用编程技术。
实训题目
使用C#编程语言,开发一款网络聊天程序,玩家通过客户端登陆远程的服务器,登陆成功后可以与其他在线的玩家通信,如下图所示。
功能描述
管理员可以启动停止服务器,服务器可以显示当前的在线人数。
玩家可以登陆服务器;登录后的玩家可以与其它在线的玩家聊天;在线玩家关闭客户端即退出登录。
用户可以注册账号登陆服务器,注册即可实现永久登陆。
需求分析
根据功能描述可知,网络聊天程序的系统结构图如下所示。
玩家
客户端
用户
用户接口
服务器端
用户集合
通信接口
管理员
用户接口
设计说明
服务器界面如下:
客户端的登陆界面如下:
客户端的注册界面如下:
客户端的聊天窗口如下:
源代码
6.1服务器端
User类
在Server_541307110114项目中添加User类。User类的代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net.Sockets;
using System.IO;
namespace Server_541307110114
{
public class User
{
public string userName;
public TcpClient client;
public BinaryReader bReader;
public BinaryWriter bWriter;
public User(TcpClient client)
{
this.client = client;
NetworkStream ns = client.GetStream();
bReader = new BinaryReader(ns);
bWriter = new BinaryWriter(ns);
}
public void Close()
{
bReader.Close();
bWriter.Close();
client.Close();
}
public void Send(string message)
{
try
{
bWriter.Write(message);
bWriter.Flush();
}
catch (Exception ex)
{
throw ex;
}
}
public string Receive()
{
try
{
return bReader.ReadString();
}
catch (Exception)
{
throw;
}
}
}
}
UserList类
在项目中添加UserList类。UserList类的代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Server_541307110114
{
您可能关注的文档
- 万科云城介绍PP探究.pptx
- 万用表在电线电缆中的使用方法探究.doc
- 万有引力和航天2016年高考及联考模拟物理试题探究.doc
- 万有引力与航天测试题及答案探究.docx
- 万有引力与航天好题探究.doc
- 万有引力与天体运动探究.docx
- 听颖师弹琴探究.pptx
- 万源广场房地产备案报告探究.doc
- 汪氏_我的祖父——2探究.docx
- 王安石《桂枝香·金陵怀古》“六朝旧事随流水,但寒烟衰草凝绿”注释译文及赏析探究.doc
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- PPAP培训课件(详细).pdf VIP
- 2023山东传媒职业学院教师招聘考试笔试试题2.pdf VIP
- 2025年数据中心五年建设:AI算力与投资方向报告.docx
- WebGIS原理及开发—基于开源框架的WebGIS技术493.pptx VIP
- 鹤煤三矿关于成立原煤车间智能选矸系统升级改造项目领导小组的通知.doc VIP
- 2023年山东传媒职业学院教师招聘考试笔试试题及答案解析.docx VIP
- 北师大版6六年级数学上册全套计算题专项练习16页.pdf VIP
- 2025中考语文名著阅读专题06 《昆虫记》真题练习(单一题)(学生版+解析版).docx
- Q_26 4003HJTG001-2019无心车床技术条件.pdf
- LC-2030C型高效液相色谱仪(设备编号)再确认方案 .pdf VIP
原创力文档

文档评论(0)