[发明专利]基于TCP/IP的网络聊天程序在审
申请号: | 201910800285.X | 申请日: | 2019-08-28 |
公开(公告)号: | CN112448966A | 公开(公告)日: | 2021-03-05 |
发明(设计)人: | 谢扬琛;原永钊;金豫 | 申请(专利权)人: | 华东师范大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06;G06F8/71;G06F8/20 |
代理公司: | 上海麦其知识产权代理事务所(普通合伙) 31257 | 代理人: | 董红曼 |
地址: | 200062 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 tcp ip 网络 聊天 程序 | ||
本发明公开了一种基于TCP/IP的网络聊天程序,其包括TCP/IP连接、Server/Client一体化和MFC架构。所述TCP/IP提供点对点的链接机制,将数据应该如何封装、定址、传输、路由以及在目的地如何接收,都加以标准化;所述Server/Client一体化是将服务器端和客户端合二为一,其本身又是客户端又是服务器端,在按下登陆时,系统就开始进行监听,利用bind函数向所有地址发送端口绑定指令。
技术领域
本发明涉及网络通信领域,具体涉及一种基于TCP/IP的网络聊天程序。
背景技术
市面上传统的通信软件如QQ等,都是基于UDP协议而来。不同于市面上常见的以UDP协议为主的通信软件,本系统采用了TCP/IP基于流面向连接的传输方式。
发明内容
本发明通过一个实际的通信软件的设计与实现,实现了基于TCPIP协议通信软件。由于通信系统通常用于多个不同的用户之间通信,为了解决单个服务器转发数据量大的问题,本系统使用了服务器客户端一体化。对于每个独立用户,都可以通过添加好友的ip地址来记录对方的信息,以此可以在需要的时候将对方的信息调用来进行TCP/IP连接。本软件还具有常规电脑软件所具有的最小化等操作。
本发明主要包括以下几个部分:
第一、TCP/IP连接
TCP/IP提供点对点的链接机制,将数据应该如何封装、定址、传输、路由以及在目的地如何接收,都加以标准化。它将软件通信过程抽象化为四个抽象层,采取协议堆栈的方式,分别实现出不同通信协议。协议族下的各种协议,依其功能不同,被分别归属到这四个层次结构之中,常被视为是简化的七层OSI模型。
第二、Server/Client一体化
本系统的一个创新点是将服务器端和客户端合二为一,一个系统本身又是客户端又是服务器端。在按下登陆时,系统就开始进行监听,利用bind函数向所有地址发送端口绑定指令(即将端口与系统绑定,其他软件无法使用这个端口)。整个系统的核心是利用读取txt文件来进行互相通信。当需要发送消息的时候,首先从msg.txt文件中读取对方的地址,然后通过connect、send函数将消息发送出去。接收端通过到来信息的头部来识别信息的信息的具体身份(如:好友申请信息,好友发送信息等等),在接收端通过SelectWay()函数来进行不同信息的操作。
第三、MFC架构
微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是微软公司提供的一个类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
MFC下一个消息的处理过程是一般是这样的:
1、_AfxCbtFilterHook截获消息(这是一个钩子函数)
2、_AfxCbtFilterHook把窗口过程设定为AfxWndProc。
3、函数AfxWndProc接收Windows操作系统发送的消息。
4、函数AfxWndProc调用函数AfxCallWndProc进行消息处理。
5、函数AfxCallWndProc调用CWnd类的方法WindowProc进行消息处理。
本发明整个消息处理的核心之一就是MFC的消息处理机制,
在客户端要向服务器端发送消息时,先从文件msg.txt中读取服务器端地址,在后connect连接,发送信息时服务器端会通过消息响应机制对信息进行解析,进入相应的函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910800285.X/2.html,转载请声明来源钻瓜专利网。