设为首页 加入收藏

TOP

16.4.2 使用CAsyncSocket类
2013-10-07 13:11:28 来源: 作者: 【 】 浏览:69
Tags:16.4.2 使用 CAsyncSocket

16.4.2  使用CAsyncSocket类

因为CAsyncSocket类较好的封装了Windows Socket API,因此使用CAsyncSocket类的步骤与直接使用WinSocket API的步骤类似,步骤如下:

(1)构造CAsyncSocket对象并使用对象创建底层的SOCKET句柄。代码如下:

  1. CAsyncSocket* pSocket = new CAsyncSocket;   // 创建CAsyncSocket对象  
  2. pSocket->Create(6650, SOCK_DGRAM );     // 创建无连接套接字 

上面代码使用Create()函数指定端口和地址,创建了一个无连接套接字。

(2)如果套接字是客户端,则使用Connect()函数连接到服务器套接字;如果套接字是服务器套接字,则调用Listen()函数启动监听,等待接收来自服务器端的套接字。当监听到来自服务器端的套接字后,调用Accept()函数接收套接字。接收连接后,可以通过密码或地址等信息验证客户端套接字的身份。

(3)通过CAsyncSocket对象的成员函数执行双向的数据通信。

(4)销毁CAsyncSocket对象。如果套接字对象在堆栈上,则析构函数会在套接字变量超出作用范围后,自动执行;如果使用new操作符创建套接字,则需要使用delete操作符销毁对象。析构函数调用对象的Close()函数关闭套接字连接。

在创建CAsyncSocket对象时,对象封装了Windows的SOCKET句柄并提供了在此句柄上的操作。当用户使用CAsyncSocket对象时,必须要处理阻塞操作、接收和发送机制使用的字节顺序以及Unicode字符集和多字节字符集的转换等问题。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇16.4.4 使用CSocket类 下一篇16.4.3 CSocket类

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: