课程设计(论文)
局域网通信系统
论文作者:
指导教师:
专 业:
系 (院):
答辩日期:
目录
摘 要 1
一、 绪论 1
1.1 即时通信系统的概念 1
1.2 UDP
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
1
1.3 开发背景 1
1.4 运行环境 2
1.5程序核心
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
图 2
1.6功能设计 2
二、 主要界面及功能的实现 4
2.1界面设计 4
1)主界面 4
2)添加好友界面 4
3)更换头像界面 5
4)搜索界面 5
5)聊天界面 5
6)修改备注界面 6
2.2编码实现 6
2.2.1 主程序初始化函数 6
2.2.2监听端口方法 7
2.2.3 添加好友方法 8
2.2.4 删除好友 9
2.2.5修改好友备注 9
2.2.6修改头像 9
2.2.7截图功能 10
2.2.7 聊天界面初始化方法 10
2.2.8 消息接收并显示 11
2.2.9 图片发送以及保存方法 12
三、软件测试 13
四、结论 14
致 谢 15
参考文献 16
摘 要
即时通讯软件是目前计算机用户进行交流最普遍的方式之一,各种各样的聊天软件也层出不穷;服务提供商也提供了越来越丰富的通讯服务功能。即时通信中最基本的功能就是通过计算机之间的文本数据的互换的形式实现思想的交流和沟通,它的优点是方便快捷,为人们之间创建了一种新型的、廉价的、快速的、简便的沟通方式。
本系统是基于UDP的局域网聊天工具。从实现了面向无连接的点对点异步通信,在此基础上应用了多线程技术解决了局域网多用户间的通信问题。聊天程序以Visual Studio 2008为基本开发环境和C# 语言进行编码设计实验
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
明该聊天工具能够为局域网内部人员提供一个很好的交流平台,方便了工作上的交流与协同。本课题开发了一个基于局域网内部的消息通讯平台。在此平台上可以实现内部用户之间的实时通讯,使用户之间能更及时、更方便有效的沟通信息。实现了局域网内部电子信息化的交流,提高了工作效率。
本系统有如下功能:
1、信息的接受和发送功能:包括文字信息以及图像信息。
2、添加好友功能:能够通过IP查找到相对应的用户以及添加其为自己的好友。
3、数据本地化功能,将好友信息保存在本地.
4、图片发送与接收,保存到本地功能.
5、截屏功能
6、更换头像功能
一、 绪论
1.1 即时通信系统的概念
即时通讯(Instant Messenger,简称IM),是指能够即时发送和接收互联网消息等的业务。自1998年面世以来,特别是近几年的迅速发展,即时通讯的功能日益丰富,逐渐集成了电子邮件、博客、音乐、电视、游戏和搜索等多种功能。即时通讯不再是一个单纯的聊天工具,它已经发展成集交流、资讯、娱乐、搜索、电子商务、办公协作和企业客户服务等为一体的综合化信息平台。是一种终端连网即时通讯网络的服务。即时通讯不同于e-mail在于它的交谈是即时的。大部分的即时通讯服务提供了状态信息的特性──显示联络人名单,联络人是否在在线与能否与联络人交谈。
近年来,随着无线通信的快速发展,移动互联网为传统的Internet注入了新的活力,同时也为即时通讯带来了一场革命,交互双方已经不再局限于以网络终端设备为唯一的接入手段,PC机在传统的网络即时通讯中所起的作用正在被手机、平板电脑所取代。这使得即时通讯更加大众化和人性化,即使不会使用电脑的人现在也可以享受到即时通讯给人们带来的变化。
1.2 UDP协议
UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。
在选择使用协议的时候,选择UDP必须要谨慎。在网络质量令人不十分满意的环境下,UDP协议数据包丢失会比较严重。但是由于UDP的特性:它不属于连接型协议,因而具有资源消耗小,处理速度快的优点,所以通常音频、视频和普通数据在传送时使用UDP较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。比如我们聊天用的ICQ和QQ就是使用的UDP协议。
1.3 开发背景
在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络,由此而产生的聊天工具越来越多,类似QQ、网络聊天时一类的聊天系统的发展日新月异。但是,QQ等现有的聊天程序也存在着很大的问题。
比如使用QQ的时候,就对各种弹窗广告深恶痛绝。对于登陆后时不时弹出的打扰窗口,很是厌烦。因此在本次作业下产生了一个制作类似QQ的网络聊天工具并且“无垃圾信息”洁净聊天工具的想法,而且希望通过制作该程序还能更好的学习网络软件编程知识。
1.4 运行环境
1.本系统基于Visual Studio 2008设计,适用于WINDOWS XP,WIN7,WIN8等系统。
2.运行环境仅限于局域网,否则无法正常通信.
3.使用C#语言开发
1.5程序核心流程图
如图1.1所示:
接收Receive
发送Send
客户端1
关 闭
Listen监听端口
Udp
图1.1程序核心流程图
1.6功能设计
1) 自动获取本机IP,并监听指定端口有无消息接收。
2) 界面显示:将已添加好友显示在好友列表中,如有不是好友向本机发消息,将自动添加为好友。
3) 聊天功能:与好友聊天。
4) 好友纪录:能保存好友信息至本地,并能察看。
5) 更换头像:双击头像,能够更换头像显示
6) 发送图片:在聊天界面选择要发送的图片进行发送。
7) 截屏:将截取整个屏幕,并且保存到指定位置。
如图1.2所示:
图1.2 功能设计图
客户端
截 取 屏 幕
保存好友信息
添删备注好友
更 改 头 像
接收各种信息
获取本机IP地址
二、 主要界面及功能的实现
2.1界面设计
1)主界面
如图1.3所示:
图1.3主界面图
2)添加好友界面
如图1.4所示:
图1.4添加好友图
3)更换头像界面
如图1.5所示:
图1.5更换头像界面图
4)搜索界面
如图1.6所示:
图1.6搜索界面图
5)聊天界面
如图1.7所示:
图1.7聊天界面图
6)修改备注界面
如图1.8所示:
图1.8修改备注图
2.2编码实现
2.2.1 主程序初始化函数
改函数的主要功能为创建UDP实例,并且开启新线程监听消息收发端口,,以及从本地加载好友信息,添加至主界面的ListBox控件列表中
void Form1_Load(object sender, EventArgs e)
{
uc = new UdpClient(6959);
LIPAddress.Text = getInfo.myIp();
Thread th = new Thread(new ThreadStart(listen));
th.IsBackground = true;
th.Start();
//-----------填充ListBox-----------
loadXMLList();
if (friendsList.Items.Count != 0)//选中列表第一个
friendsList.SelectedIndex = 0;
}
2.2.2监听端口方法
该方法主要功能是监听端口信息,收到消息后首先判断是否已存在该好友的聊天窗口,如果存在只发送消息到窗口,否则创建新的窗口实例,并且弹出聊天界面。还实现了陌生好友来信后自动添加信息至ListBox和本地。
IPEndPoint iep;
string text,text1;