VC++聊天室课程设计完整代码及程序

VC++聊天室课程设计完整代码及程序

ID:47037412

大小:295.50 KB

页数:14页

时间:2019-07-04

VC++聊天室课程设计完整代码及程序_第1页
VC++聊天室课程设计完整代码及程序_第2页
VC++聊天室课程设计完整代码及程序_第3页
VC++聊天室课程设计完整代码及程序_第4页
VC++聊天室课程设计完整代码及程序_第5页
资源描述:

《VC++聊天室课程设计完整代码及程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、网络聊天室课程设计班级:姓名:学号:时间:目录1.需求分析22.相关知识42.1Winsock介绍42.2MFC类CAsyncsocket和CSocket52.3利用CSocket进行有连接的通信63.详细设计83.1客户端的实现83.2服务端的实现134.程序运行结果204.1服务器端204.2客户端205.参考文献221.需求分析当前是数字信息时代,网络时代,任何一种编辑工具都不能忽视在网络上的应用,并且随着Internet的普及和宽带技术的成熟,越来越多的用户进入网络世界中享用浏览新闻、查询信息、发送邮件、

2、在线观看电影等服务,享受网络带来的便利和办公的高效,与此同时一个新型的Web应用程序为网民之间提供了一个实时通信的功能和场所,这就是聊天室。在网络早期就开始盛行,不论是BBS,IRC都有类似网上聊天室的机制。聊天室为网友提供了实时性对话的渠道,是网络上极为流行的一项服务。聊天室适用于网上会议或闲聊的一些场合。聊天室为网友提供了较好的交友环境,网友之间相互以文字交谈,在形式上有点类似笔友的性质,却大大节省了书信往返的时间,这也是网上交友之所以如此热门的原因。聊天室的设计目标本课题是建立聊天通信模型,设计一个聊天室软

3、件,包括服务器端和客户端,主要功能为:服务器端功能:1、初始化socket,创建服务器端。2、维护一个链表,保存所有用户的IP地址、端口信息。3、接受用户传送来的聊天信息,然后向链表中的所用用户转发。4、接受用户传送来的连接判断命令,并向用户发出响应命令。客户端功能:客户端界面上的两个文本框,一个用于显示接受的聊天信息,一个用来接受用户输入的聊天信息。当按下“发送”按钮时将信息发送给服务器。通过本课题的毕业设计,可以比较深入的了解和掌握WINSOCK控件基本属性、方法和事件,理解网络聊天通信的概念,输控制协议(T

4、CP)进行数据交流,初步掌握网络聊天通信程序的设计方法。并能巩固和扩展大学期间的学习内容,进行项目的设计开发训练,更好的适应社会的需求。-14-2.相关知识2.1Winsock介绍WindowsSockets规范以U.C.Berkeley大学BSDUNIX中流行的Socket接口为范例定义了一套MicosoftWindows下网络编程接口。它不仅包含了人们所熟悉的BerkeleySocket风格的库函数;也包含了一组针对Windows的扩展库函数,以使程序员能充分地利用Windows消息驱动机制进行编程。  Wi

5、ndowsSockets规范本意在于提供给应用程序开发者一套简单的API,并让各家网络软件供应商共同遵守。此外,在一个特定版本Windows的基础上,WindowsSockets也定义了一个二进制接口(ABI),以此来保证应用WindowsSocketsAPI的应用程序能够在任何网络软件供应商的符合WindowsSockets协议的实现上工作。因此这份规范定义了应用程序开发者能够使用,并且网络软件供应商能够实现的一套库函数调用和相关语义。2.2MFC类CAsyncsocket和CSocket构造一个CAsyncS

6、ocket对象并使用该对象创建基础SOCKET句柄。套接字的创建遵循两阶段构造的MFC模式。例如:CAsyncSocketsock;sock.Create();//Usethedefaultparameters对于服务器套接字,必须指定端口。对于客户端套接字,通常接受此参数的默认值,该值允许WindowsSockets选择端口。套接字类型:SOCK_STREAM(默认值)或SOCK_DGRAM。套接字“地址”,如“ftp.microsoft.com”或“128.56.22.8”。该地址为网络上的网际协议(IP)地

7、址。很可能要始终依赖此参数的默认值。如果套接字是客户端,则使用CAsyncSocket::Connect将此套接字对象连接到服务器套接字。销毁CAsyncSocket对象。-14-如果在堆栈上创建了套接字对象,当包含函数超出范围时将调用此对象的析构函数。如果使用new运算符在堆上创建了套接字对象,则必须负责使用delete运算符销毁此对象。“阻塞”方案。发送和接收计算机之间的字节顺序差异。在Unicode和多字节字符集(MBCS)字符串之间转换。2.3利用CSocket进行有连接的通信CAsyncSocket类逐

8、个封装了WinSockAPI,为高级网络程序员提供了更加有力而灵活的方法。这个类基于程序员了解网络通讯的假设,目的是为了在MFC中使用WinSock,程序员有责任处理诸如阻塞、字节顺序和在Unicode与MBCS间转换字符的任务。为了提供更方便的接口以自动处理这些任务,MFC给出了CSocket类,这个类是由CAsyncSocket类继承下来的,它提供了比CAsyncSo

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

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

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