种协议:TCP协议和 UDP协议。使用TCP协议来实现服务器 - N 客户模式。UDP可以实现点对点无服务器通讯。TCP协议即数据传输协议,允许创建和维护与远程计算机的连接,使彼此可以进行数据传输。
利用 TCP协议通讯必须分别建立客户应用程序和服务器应用程序。在创建客户应用程序时,必须知道服务器名或其 IP地址(RemoteHost 属性)及服务器进行侦听的端口(RemotePort属性) ,然后调用 Connect 方法。创建服务器应用程序时 ,应设置一个侦听端口(LocalPort 属性)并调用 listen 方法。当客户机需要连接时(connect),就会发生 ConnectionRequest 事件。为了完成连接,可以在 ConnectionRequest 事件中调用Accept 方法。建立连接后 ,任何一方计算机都可以发送、接收对方数据。如果要发送数据,需调用 SendData 方法。当接收到数据时,会发生 DataArrival 事件,调用 DataArrival 事件中的 GetData方法就可以获得对方传送的数据[11]。
Winsock控件属性:
Protocol∥值为sckTCPProtocol时使用TCP/ IP协议,sckUDPProtocol使用UDP协议
RemoteHost ∥准备连接远程机的 IP地址
RemotePort ∥连接远程机的 IP端口号
LocalPort ∥本地机 IP端口号
Winsock控件方法:
Connect ∥申请连接远程机
Listen ∥设置监听
Accept ∥建立实际连接
Senddata ∥发送数据
Getdata ∥接收数据(用文本框接收时应加上参数Vbstring)
Close ∥关闭连接
Winsock控件事件:
Connectionrequest ∥一方请求连接时另一方产生
Connect ∥一方接受连接时另一方产生
Close ∥一方关闭连接时另一方产生
DataArrival ∥一方发送数据另一方产生
Error ∥请求连接失败时产生
第6章 详细设计
6.1 数据库设计
本系统采用的Access数据库是Microsoft公司始于1994年发表的微机数据库管理系统。决定采用ACCESS数据库保存用户的基本信息。采用文件和数据库的方式存储所有用户登录/退出记录以及用户的聊天信息。作为一种功能强大的MIS系统开发工具,它具有界面友好,易学易用,开发简单,接口灵活等特点,是一个典型的新一代数据管理和信息系统开发工具。Access具有较独特的优势-提供了更强大的数据组织,用户管理,查询检索、数据排序及数据打印等功能。在一个工作组级别的网络环境中,使用Access开发的多用户数据库管理系统具有传统的XBASE数据库系统所无法比拟的客户服(Client/Server)结构和相应的数据库安全机制。
6.1.1 系统数据流程图
数据流图(Data Flow Diagram,简称DFD)是新系统逻辑模型的主要组成部分,它可以反映出系统的主要功能、系统与外部环境见的输入输出、系统内部的处理、数据传送、数据存储等的情况。它的绘制依据是现行系统流程图,数据流程图是管理信息系统的总体设计图[12]。
图6.1本系统的数据流图
6.1.2 数据库逻辑结构设计
根据系统的需要,设计2个数据表来存放用户信息,数据库中这两个表的名称分别为BACK和DATA。
列表的详细内容如下:
表6.1注册信息表
列名 数据类型 说明 ID TEXT 序号 用户名 TEXT 聊天人员的用户名 密码 TEXT 密码 性别 TEXT 聊天人员性别 年龄 TEXT 年龄 个人说明 TEXT 个人说明
表6.2登陆信息表
列名 数据类型 说明 ID TEXT 序号 用户名 TEXT 用户名 密码 TEXT 密码 上线时间 TEXT 上线时间 IP TEXT IP 远程端口
TEXT 远程端口 计算机名称 TEXT 计算机名称 6.2 各主要窗体及核心代码介绍
6.2.1 密码模块
为了提高软件操作安全性,进入系统前,需要进行身份验证,通过此窗口输入个人信息以验证身份。用户登陆