摘 要
即时通讯系统是目前Internet上最为流行的通讯方式,它最基本的功能就是通过计算机之间的文本数据的互换形式,实现思想的交流和沟通,它的优点是方便快捷,为人们的沟通创建了一种新型的、廉价的、快速的、简便的沟通方式。
然而由于目前的企业,尤其是大型的企业,大都有自己的Internet网络,其大多的工作流或内部交流都可以通过内部的Internet完成。如果企业中员工都使用目前免费的几种即时通讯软件,则必须对这些使用进行严格的审计和管理,这无疑给IT部门的工作带来了一定的麻烦。
所以我认为,有必要也有可能开发一款即时通信软件,首先面向企业内部使用,进而发展到公网应用,以期成为一个企业内部、企业与企业之间互相交流的平台。首先在即时通讯系统服务的内部拓扑中我采用客户/客户模型(P2P)。这种模型主要用于小型局域网内客户间的互相通讯.它的特点是:使用容易,各客户上的资源可直接共享,并且容易安装和维护,不需要专用的服务器。然后我选择Visual C++进行程序编程,因为Visual C++编程语言是一种可视化开发工具,可用于开发基于Wondows操作系统的32位应用程序。
最后,通过对即时通讯系统的研究,了解了现今即时通信系统的发展脉络,同时也指出了即时通讯研究中等待解决的问题。
关键词:即时通讯、P2P、Visual C++
目 录
摘要………………………………………………………………….….………………II
1 绪论………………………………………….….…….………….…………………………1
1.1课题的背景………………………………………….………….………………………1
1.2即时通讯系统研究和应用现状……………….……………….……………………1
1.3即时通信市场的发展趋势……………………………………………………3
1.4研究的基本内容与拟解决的主要问题:……………………………………………4
1.5研究的方法与技术路线:…………………………………………………………… .4
2 即时通信系统的技术背景…………………….………………….….…………… . .6
2.1 即时通信系统结构模型——P2P模型………………………………………………6
2.1.1 P2P的概念………………………………………………………………………6
2.1.2 P2P技术的特点………………………………………………….….……………6
2.1.3 P2P模型分类…………………………………………………………………7
2.2传输协议…………………………………………………………………………………9
2.2.1 TCP/IP协议的产生和发展………………………….………….………………10
2.2.2 TCP/IP的优点……………………………………………………………………10
2.2.3 TCP/IP的参考模型………………………………………….……….………11
2.3 套接字……………………………………………………….……….…….…13
3 Visual C++的网络编程…………………………………….…………….…………15
3.1 Socket概述…………………………………………………….……………………15
3.1.1 Socket简介………………………………………………….……………………15
3.1.2 Socket编程………………………………………………….……………………15
3.1.3 Windows Socket发展…………………………………….……………………15
3.1.4 Windows Socket分类………………………………….………………………17
3.1.5 Windows Socket API……………………………….….……….………………17
3.2 Windows Sockets的编程原理……………………….….…………………………19
3.2.1 套接字的类型…………………………….…………….……………………19
3.2.2 基于TCP的Socket编程………………………………………………………20
3.2.3 基于UDP的Socket编程…………………….……….………….…………21
3.2.4 Winsock的启动和终止………………………………….……….…………21
3.2.5 错误检查和控制…………………………………….….………….….………22
3.2.6 流套接字编程模型……………………………….……………….…………23
3.2.7 数据报套接字编程模型………………………….……………………………25
4 即时通讯系统的界面设计………………………………………….……….26
4.1 对话框应用程序设计……………………………….….………….………………26
4.1.1基本对话框创建……………………………………………….…….26
4.1.2设置对话框属性……………………………….…………….……28
4.1.3标准控件的应用……………………………….………….……28
4.2 主界面设计…………………….…………….………….….…….….……….……….30
4.3 添加好友界面设计……………………………………………………….….………34
4.4 聊天界面设计……………………………………………….………….…………35
4.5 特效功能 …………………………………………………………….….…………38
4.6系统的编译 …………………………………….…….………………….…………….43
5 总结…………………………………………………….…………………….……….44
致 谢……………………………………………………….……………….….…………….45
参考文献……………………………………………………….……………….………….…46