第5 MFC WInS0ck类的编程 51 CAsyncSocke类 52CS0ckt类 53CS0cket类的编程模型 54用 CAsyncSocke类实现聊天室程序 55用 CSocket类实现聊天室程序
第5章 MFC WinSock类的编程 5.1 CAsyncSocket类 5.2 CSocket类 5.3 CSocket类的编程模型 5.4 用CAsyncSocket类实现聊天室程序 5.5 用CSocket类实现聊天室程序
第5章 MFC Winsock类的编程 为简化套接字网络编程,更方便地利用 Windows 的消息驱动机制,微软的基础类库( Microsoft Foundation Class Libary,简称MFC),提供了 两个套接字类,在不同的层次上对 Windows socket API函数进行了封装,为编写 Windows socket网络 通信程序,提供了两种编程模式
为简化套接字网络编程,更方便地利用Windows 的消息驱动机制,微软的基础类库(Microsoft Foundation Class Libary,简称MFC),提供了 两个套接字类,在不同的层次上对Windows Socket API函数进行了封装,为编写Windows Socket网络 通信程序,提供了两种编程模式。 第5章 MFC Winsock类的编程
第5章 MFC Winsock类的编程 CAsyncSocket类,在很低的层次上对 Windows sockets AP进行了封装。 它的成员函数和 Windows Sockets APl的函数调用直接对 应。一个 CAsyncSocke对象代表了一个 Windows套接字。它是 网络通信的端点。除了把套接字封装成C+的面向对象的形式 供程序员使用以外,这个类唯一所增加的抽象就是将那些与套 接字相关的 Windows消息变为 CAsyncSocket类的回调函数。 如果你对网络通信的细节很熟悉,可以利用 Windows Sockets ap编程的灵活性。但是要自己解决阻塞问题、字节顺 序问题、字符串转换问题
CAsyncSocket类,在很低的层次上对Windows Sockets API进行了封装。 它的成员函数和Windows Sockets API的函数调用直接对 应。一个CAsyncSocket对象代表了一个Windows套接字。它是 网络通信的端点。除了把套接字封装成C++的面向对象的形式 供程序员使用以外,这个类唯一所增加的抽象就是将那些与套 接字相关的Windows消息变为CAsyncSocket类的回调函数。 如果你对网络通信的细节很熟悉,可以利用Windows Sockets API编程的灵活性。但是要自己解决阻塞问题、字节顺 序问题、字符串转换问题。 第5章 MFC Winsock类的编程
第5章 MFC Winsock类的编程 CSocket类,从 CAsyncSocket类派生,是对 Windows Sockets apl的高级封装。 CSocket类继承了 CASyncSocket类的 许多成员函数,用法一致。 CSocket类的高级表现在三个方面: (1) CSocket结合 Archive类来使用套接字。 (2) CSocket管理了通信的许多方面,如字节顺序问题和 字符串转换问题。 (3) CSocket类为 Windows消息的后合处理提供了阻塞的 工作模式( Blocking)
CSocket类,从CAsyncSocket类派生,是对Windows Sockets API的高级封装。CSocket类继承了CAsyncSocket类的 许多成员函数,用法一致。CSocket类的高级表现在三个方面: (1)CSocket结合Archive类来使用套接字。 (2)CSocket管理了通信的许多方面,如字节顺序问题和 字符串转换问题。 (3)CSocket类为Windows消息的后台处理提供了阻塞的 工作模式(Blocking)。 第5章 MFC Winsock类的编程
第5章 MFC Winsock类的编程 这两个类提供了事件处理函数,编程者通过对事件处 理函数进行重载,可方便地对套接字发送数据、接收数据 等事件进行处理。同时,可以结合MFC的其它类来使用这 两个套接字类,并利用MFC的各种可视化向导,从而大大 简化了编程。 在MFC中,有一个名为 afx h的包含文件, C: Program Files\microsoft Visual Studio 11.0lvc latlmfc include lafxsock h。在这个文件中定义了 CAsyncSocket, CSocket,和 CSocketFile这三个套接字类 class CasyncSocket: public Obiect class CSocket public CAsyncSocket class CsocketFile public cfile
这两个类提供了事件处理函数,编程者通过对事件处 理函数进行重载,可方便地对套接字发送数据、接收数据 等事件进行处理。同时,可以结合MFC的其它类来使用这 两个套接字类,并利用MFC的各种可视化向导,从而大大 简化了编程。 在MFC中,有一个名为afxSock.h的包含文件, C:\Program Files\Microsoft Visual Studio 11.0\VC \atlmfc \include \afxsock.h 。在这个文件中定义了CAsyncSocket, CSocket,和CSocketFile这三个套接字类。 class CAsyncSocket : public Cobject class CSocket : public CAsyncSocket class CSocketFile : public CFile 第5章 MFC Winsock类的编程