创建局域网聊天软件.doc
文本预览下载声明
实验八 创建局域网聊天软件
【实验目的】
通过创建局域网聊天软件,让学生掌握如何在.net下通过socket类实现tcp和udp通信。
【实验要求】
写出程序,并调试程序,要给出测试数据和实验结果。
整理上机步骤,总结经验和体会。
完成上交程序。
【案例分析】
为实现网络聊天的功能,采用Windows Socket编程,服务器与客户端采用了TCP/IP连接方式,在设计聊天方案时,实行将所有信息发往服务器端,再由服务器进行分别处理的思路,服务器端是所有信息的中心。
由于服务器端要保存用户信息,我们利用数据库来实现这一功能,因此首先需要建立用户信息数据库。在信息到来及好友上线时,通过闪动托盘图标和播放不同的音乐进行提示。建立消息链表来保存用户接收的各种消息。
通信服务端
服务端代码如下:
C# Code []
1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Text;
7 using System.Windows.Forms;
8
9 using System.Net;
10 using System.Net.Sockets;
11 using System.Threading;
12 using System.Xml;
13
14 namespace Server
15 {
16 public partial class ServerMain : Form
17 {
18 public ServerMain()
19 {
20 InitializeComponent();
21 }
22
23 private void ServerMain_Load(object sender, EventArgs e)
24 {
25 this.CmdStar.Enabled = true;
26 this.CmdStop.Enabled = false;
27 }
28
29 private void 配置参数ToolStripMenuItem_Click(object sender, EventArgs e)
30 {
31 Set TSet = new Set();
32 TSet.ShowDialog();
33 }
34
35 private void 关于ToolStripMenuItem_Click(object sender, EventArgs e)
36 {
37 About TAbout = new About();
38 TAbout.Show();
39 }
40 /// summary
41 /// 获得XML文件中的端口号
42 /// /summary
43 /// returns/returns
44 private int GetPort()
45 {
46 try
47 {
48 XmlDocument TDoc = new XmlDocument();
49 TDoc.Load(Settings.xml);
50 string TPort = TDoc.GetElementsByTagName(ServerPort)[0].InnerXml;
51 return Convert.ToInt32(TPort);
52
53 }
54 catch { return 6600; }//默认是6600
55 }
56
57 //声明将要用到的类
58 private IPEndPoint Serve
显示全部