设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> Visual C++ >> 用WINSOCK实现聊天室的VC++程序设计
精品推荐
Visual C++点击TOP10
·用WINSOCK实现聊天室的VC++程序设计
·利用mfc编写activex控件
·用vc实现生产者消费者问题
·DirectX8.0
·C/C++ 大量经典编程书籍下载
·VC快捷键大全
·CreateFileMapping的MSDN翻译和使用心得
·Windows环境下的麦克风录音系统
·挂钩Windows API
·如何开发OPC Server
编程开发点击TOP10
·数字小键盘指法练习
·用C语言编通讯录程序(初学者级别的)
·ASP.NET 程序中常用的三十三种代码
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·Modem 常用AT指令集
·java笔试题
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

用WINSOCK实现聊天室的VC++程序设计

作者: 来源:网络文章 时间:2005-12-13 18:42:42

用WINSOCK实现聊天室的VC++程序设计(3) recv() 从面向连接的 Socket 接收信息 此函数用来从面向连接的 Socket 接收信息
send() 使用面向连接的 Socket 发送信息 此函数用来从面向连接的 Socket 发送信息
WSAAsyncSelect() 要求某一 Socket 有事件 (event) 发生时通知使用者 此函数用来请求Windows Sockets DLL 为窗口句柄发一条消息-无论它何时检测到由lEvent参数指明的网络事件。要发送的消息由wMsg参数标明.被通知的套接口由s标识。本函数自动将套接口设置为非阻塞模式。


lEvent参数由下表中列出的值组成

FD_READ 欲接收读准备好的通知
FD_WRITE 欲接收写准备好的通知
FD_OOB 欲接收带边数据到达的通知
FD_ACCEPT 欲接收将要连接的通知
FD_CONNECT 欲接收已连接好的通知
FD_CLOSE 欲接收套接口关闭的通知

这个函数可以认为是 WINSOCK API 中最为重要的
一个函数。要想使用好这个函数,你必须对 WINDOWS 编程的事件驱动
和消息传递有很清楚的了解。
四:聊天室应用程序的设计说明:
软件功能:
Internet上可以提供一种叫IRC 的服务。使用者通过客户端的程序
登录到IRC服务器上,就可以与登录在同一IRC服务器上的客户进行交谈,这也就是平常
所说的聊天室。在这里,给出了一个在运行TCP/IP协议的网络上实现IRC服务的程序。
软件使用说明:
首先,在一台计算机上运行服务端程序,然后就可以在同一网络的
其他计算机上运行客户端程序,登录到服务器上,各个客户之间就可以聊天了。
软件设计要点:
1、服务端
核心代码在 CServerViwe 类中,有一个 SOCKET 变量
m_hServerSocket 和 SOCKET 数组 m_aClientSocket[MAXClient](MAXClient:
所定义的接收连接客户的最大数目),m_hServerSocket 用来在指定的端口(>1000)
进行侦听,如果有客户端请求连接,则在 m_aClientSocket 数组中查找一个空 socket,
将客户端的地址赋予此 socket。
每当一个 ClientSocket 接收到信息,都将会向窗口发一条消息。
程序接收到这个消息后,再把接收到的信息发送给每一个 ClientSocket。
2、客户端
客户端比较简单,核心代码在 CClientDlg 类中。只有一个 socket
变量 m_hSocket,与服务端进行连接。连接建立好后,通过此 SOCKET 发送和接收信息。
为了简化设计,用户名在客户端控制,服务器端只进行简单的接收信
息和“广播”此信息,不进行名字校验,也就是说,可以有同名客户登录到服务端。这个
程序设计虽然简单,但是已经具备了聊天室的最基本的功能。
程序在VC++ 6.0 下编译通过,在使用 TCP/IP 协议的 WINDOWS 95/98
对等局域网和使用 TCP/IP 协议的 WINDOWS NT 局域网上运行良好。



用WINSOCK实现聊天室的VC++程序设计
罗 杰
(贵州大学计算机软件与理论研究所)

摘要:WINSOCK 是在Windows进行网络通信编程的API接口,也是
Windows网络编程的事实标准。在网络编程中最常用的方案便是客户
机/服务器模型。本文提出了在客户机/服务器模型下用WINSOCK实现
Internet中常见的聊天室软件的方案。

关键词:套接字,WINSOCK,客户机/服务器,网络编程
一、SOCKET简介
80年代初,美国政府的高级研究工程机构(ARPA)给加利福尼亚大
学Berkeley分校提供了资金,让他们在UNIX操作系统下实现TCP/IP协
议。在这个项目中,研究人员为TCP/IP网络通信开发了一个API(应用
程序接口)。这个API称为Socket接口(套接字)。今天,SOCKET接口
是TCP/IP网络最为通用的API,也是在INTERNET上进行应用开发最为通
用的API。
90年代初,由Microsoft联合了其他几家公司共同
制定了一套WINDOWS下的网络编程接口,即WindowsSockets规范。它是

共6页 9 7 [1] [2] [3] [4] [5] [68 :>

用WINSOCK实现聊天室的VC++程序设计 相关文章:
用WINSOCK实现聊天室的VC++程序设计 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com