- 2
- 0
- 约4.75千字
- 约 5页
- 2016-11-27 发布于重庆
- 举报
基于VC的聊天軟件设计与实现
ASP语言QQ在线系统在网站中的应用
摘要:互联网的快速发展,促进了网络中的信息传输,简单便捷的快速获得人工交流信息变得尤为重要。本文从技术的角度出发,设计与实现了一款基于网页的互动聊天工具。在本文中,我们首先介绍了软件的系统结构及设计思路,然后分别设计与实现了本软件的数据存储系统。
关键字:Vb开发,网络聊天软件,QQ在线,基于网页,留言系统。
Abstract: The rapid development of the Internet promotes the transmission of network information and Internet chat has become increasingly popular. In this paper, we design and implement a network chat software from the technical view. We first introduce the software architecture and design ideas, then design and implement the database systems, server software and client software of the chat software.
Keywords: VC development, network chat software, Socket programming, C/S model
引言
近年来,随着全球信息化技术的发展,聊天软件也得到了快速的发展,而且规模越来越大,功能也越来越强。即时聊天软件使人们的沟通突破了时空和级别的界限,使陌生人之间的沟通突破了环境界限,使自我与外界的沟通突破心理界限。聊天软件的广泛应用,已经不仅仅是一种技术工具,它成为了人们交流的一种重要方式,并构建起一种新的社会关系。
目前的聊天软件一般采用UDP或者 TCP协议体系来实现 ,开发技术已经比较成熟。本文在VC开发环境下设计和实现了一种聊天软件,可以实现在线用户的即时聊天和文件传输功能。
系统分析与设计
本文所设计和实现的网络聊天软件是在VC开发环境下完成的,分为服务器和客户端两部分,使用SQL Server 2005数据库来保存注册用户的信息。
系统的整体结构
本网络聊天软件采用了C/S(客户机/服务器)模式开发,一台服务器,多个客户机,服务器与客户机之间,客户机与客户机之间采用socket技术来实现网络通信。在此系统中,服务器能够及时的响应客户端请求;客户端能根据从服务器得到的用户列表与对应的多个在线客户端聊天和完成文件传输功能。如图1是系统的结构图。
图1 系统结构图
从图中可以看出,在此系统中,使用4000端口用于服务器和各客户端通信,使用4001端口用于各个客户端间聊天,使用4002端口用于各个客户端间的文件传输。
系统的功能
本系统的服务器和客户端分别完成不同的功能,而且相互配合,实现了即时聊天和文件传输的功能。
服务器端的功能主要包括以下几项:
负责客户端用户的注册登录,以及用户资料的获取;
负责用户登录、查询,修改用户的基本信息,实时更新在线用户列表;
采用多线程机制,同时接受和处理多个客户端发来的服务请求。
客户端的功能主要包括以下几项:
从服务器端得到在线用户列表并显示;
负责与其它客户端进行信息交流和控制;
每个客户端既是聊天的发起端有时接收端,实现了多点同时聊天和文件传输。
数据库设计与实现
本系统的数据库是供服务器端来存取信息使用的。客户端不会直接操作数据库,而是通过向服务器发送请求,由服务器得到数据库中的数据后,通过网络传输给客户端。
在系统的数据库中,主要保存了注册用户的信息。我们使用userinfo数据表来保存用户信息,在此数据表中保存的用户信息主要有:用户编号,用户姓名,用户性别,用户年龄,用户地址,用户密码等。如表1是userinfi数据表的字段设置。
表1 userinfo数据表字段设置
字段名称
数据类型
字段大小
id
数字
长整型
nickname
文本
50
sex
文本
2
age
数字
整型
address
文本
50
password
文本
50
服务器端设计与实现
因为服务器端要处理多个客户端发来的请求,因此使用了多线程设计。一个线程处理各个客户端的连接请求(accept);另一个线程是在客户端连接成功后,处理客户端发送来的各种请求信息,包括:用户登录,用户注册,用户下线,返回在线用户列表,查询和修改某个在线用户的信息。如下是服务器启动后的主要处理程序段:
//创建socket
if((sListen=WSASocket(AF_INET,SOCK_STREAM,0
原创力文档

文档评论(0)