24点游戏注释版.doc
上传人:qw****27 上传时间:2024-09-11 格式:DOC 页数:14 大小:160KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

24点游戏注释版.doc

24点游戏注释版.doc

预览

免费试读已结束,剩余 4 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

//user类存用户信息usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Net;usingSystem.Net.Sockets;usingSystem.IO;namespaceServer1{classUser//用于保存与客户通信需要的信息{publicBinaryReaderbr{get;privateset;}//定义User类的属性:可以以二进制方式读写流publicBinaryWriterbw{get;privateset;}publicTcpClientclient{get;privateset;}//为tcp网络服务提供客户端连接publicstringuserName{get;set;}//用户名publicUser(TcpClientclient)//带参数构造方法,初始化类的成员构造函数可理解为一种特殊的方法成员,它在每次创建对象时被自动调用,通常用于对象的初始化。{this.client=client;//client字段等于离它定义最近的clientthis.userName="";//userName等于空NetworkStreamnetworkStream=client.GetStream();//取得客户端发过来的网络流br=newBinaryReader(networkStream);//将网络流作为二进制读写对象bw=newBinaryWriter(networkStream);}}}//服务器usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Net;usingSystem.Net.Sockets;usingSystem.Threading;namespaceServer1{publicpartialclassMainForm:Form//初始化变量,将类、结构或接口的定义拆分到多个文件中,一个类定义在不同的类文件里{privateList<User>userList=newList<User>();//保存连接的所有用户IPAddresslocalAddress;//使用的本机IP地址privateconstintport=51000;//监听端口privateTcpListenermyListener;boolisNormalExit=false;//是否正常退出所有接收线程publicMainForm(){InitializeComponent();//InitializeComponent()初始化了添加到窗体上的所有控件,还初始化了窗体的属性listBoxStatus.HorizontalScrollbar=true;//显示水平卷轴IPAddress[]addrIP=Dns.GetHostAddresses(Dns.GetHostName());//获取本机iplocalAddress=addrIP[0];//获取本地ipbuttonStop.Enabled=false;//停止服务不可以点}privatevoidbuttonStart_Click(objectsender,EventArgse)//【开始监听】按钮的Click事件{myListener=newTcpListener(localAddress,port);//创建对象myListener.Start();//开始运行listBoxStatus.Items.Add(string.Format("开始在{0}:{1}监听客户连接",localAddress,port));//listbox显示ThreadmyThread=newThread(ListenClientConnect);//创建一个线程监听客户端连接请求myThread.Start();buttonStart.Enabled=false;buttonStop.Enabled=true;}privatevoidListenClientConnect()//接收客户端连接{TcpClientnewClient=null;//tcpclient为tcp网络服务提供客户端链接while(true){try//这里有异常才会