【摘要】随着Internet在中国的迅速发展,人们日常生活中越来越多地使用聊天室来为自己的工作和学习服务。由于目前上网的一般都是具有高学历的新一代创业者,因此,在网上聊天室这个虚拟的社会中,可以结交各层次各地方的朋友,从而为自己获取更多的知识和更多的阅历。
该聊天程序包括服务器和客户端两部分,使用是MFC的CSOCKET类。它可以使多个人聊天,其工作方式类似于网上聊天室,可以在同一台机器上启动多个客户端。本系统软件产品的主要功能是实现网上聊天,可以让多个用户同时互相通信,有一个聊天服务器,用于检查客户登陆请求,转发客户所发出的消息,并负责删除退出的用户。客户程序主要实现登录到聊天服务器,向服务器发送各种请求,和指定用户进行聊天等功能。
关键词:聊天室 Visual C++ 6.0 API CSOCKET
【Abstract】With the rapid development of Internet in China, People using chat-room service for work and learning are more and more in daily life. Generally speaking, the people online currently all have a excellent education background, accordingly, In this chat-room which actually is a virtual community. One can make friends come from different levels and places, thus, people could obtain more knowledge and experience.
This chat-room consists of Server and Client end . It adopt the CSOCKET class of MFC. Many people can chat simultaneously in this system, the work style of which resemble to the online chat-room, which could start many client ends in one computer. The function of this system is accomplish online chatting, allowing communication simultaneously among many users. And system have a chatting server which used for checking login requirements, transmitting customer’s messages, deleting secessional users. Client program response for
login chatting server, deliver all kinds of requirements, having a chat with definite subscribers, etc.
Key words:chat-room Visual C++6.0 API CSOCKET
目 录
1.引言 1
1.1.选题的依据及课题的意义 1
1.2.国内外研究概况及发展趋势 1
2.功能设计与实施方案 3
2.1.设计目标 3
2.1.1.服务器端设计目标 3
2.1.2.客户端设计目标 3
2.2.实施方案 4
2.2.1.基础知识的介绍 4
2.2.1.1.CAsyncSocket 类和CSocket 类简述 4
2.2.1.2.CasyncSocket 类编程模型 5
2.2.1.3.Csocket类编程模型 6
2.2.1.4.客户服务器模型 7
2.2.1.5.WINSOCK API主要函数简介 8
2.2.2.开发工具的选择 10
2.2.2.1.Windows环境编程概要 10
2.2.2.2.Windows环境面向对象的编程 10
2.2.2.3.开发工具—Visual C++ 10
2.3.结构流程 11
2.3.1.服务器端结构流程图 11
2.3.2.客户端结构流程图 13
3.程序详细设计与设计思想 14
3.1.聊天室服务器端设计 14
3.1.1.服务器端设计思想 14
3.1.2.服务器端界面 15
3.1.3.服务器端各主要类的定义及其功能 15
3.1.4.服务器端用户管理功能的设计与实现 20
3.1.5.服务器端显示消息的功能设计与实现 21
3.2.聊天室客户端设计 22
3.2.1.客户端设计思想 22
3.2.2.客户端界面 23
3.2.3.客户端各主要类的定义及其功能 23
3.2.4.客户端登陆的设计与实现 27
3.3.5.客户端发送消息的设计与实现 28
3.3.6.客户端显示收到消息的设计与实现 32
4.结论 33
5.致谢 34
6.参考文献 35
1.引言
1.1.选题的依据及课题的意义
随着网络信息时代的来临,INTERNET应用越来越广泛,人们越来越习惯于在网上获取和交流信息。据调查显示,80%以上的人上网都会打开聊天工具来聊天,而几乎每一个年轻人都会去聊天。使用网上聊天已经成为现代年轻人一种新的交往方式。
根据网上调查,在所有参加网上聊天的大学生中,进聊天室进行聊天的占69.65%,使用网络寻呼机进行聊天的占37.93%,还有2.75%的受访者声称自己使用其他方式进行聊天。进聊天室聊天是一种较为公共的聊天方式,而使用网络寻呼机则是一种具有排他性的聊天方式,一般能够用网络寻呼机进行联络的,都是比较熟悉的网友。使用网络寻呼机还意味着使用者希望自己的网友随时与自己联系,表现出一种开放性的网上交际观念。
聊天室更适合于陌生人之间进行较为主观,感兴化的讨论。所以有大部分的人会进入聊天室聊天,它会给人一个完全自由的聊天世界。
作为一个计算机科学与技术专业的学生,经过四年大学知识的系统学习,应该对计算机科学与技术这个名词有了一定的认识。在这四年里,我对本专业学习也有了长足的进步,在毕业即临时,我就选择了自己感兴趣的基于API的聊天室这个课题作为我的毕业设计及论文写作,以检验四年来的学习情况。
1.2.国内外研究概况及发展趋势
聊天室的发展呈现万花筒般的发展,开发工具可以是asp,php,cgi,vc++,c#,java等等,做出的聊天室各有千秋