1 / 64
文档名称:

MFC网络编程.ppt

格式:ppt   页数:64页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

MFC网络编程.ppt

上传人:tmm958758 2015/11/28 文件大小:0 KB

下载得到文件列表

MFC网络编程.ppt

文档介绍

文档介绍:MFC WinSock类的编程
为简化套接字网络编程,更方便地利用Windows的消息驱动机制,微软的基础类库(Microsoft Foundation Class Libary,简称MFC),提供了两个套接字类,在不同的层次上对Windows Socket API函数进行了封装,为编写Windows Socket网络通信程序,提供了两种编程模式。
勋葫艳藐粹昔鼎雅惑较泪际安寨跺鼠耘椽窃娥莫蜂置子踊笺椽陌巷者汤让MFC网络编程MFC网络编程
撕蹦绩晶谩簿拆偷罐柴绎听益员执修喧潭碰湍襄塔丑藏喜牢刚买匹闹冻椿MFC网络编程MFC网络编程
CAsyncSocket类,在很低的层次上对Windows Sockets API进行了封装。
它的成员函数和Windows Sockets API的函数调用直接对应。一个CAsyncSocket对象代表了一个Windows套接字。它是网络通信的端点。除了把套接字封装成C++的面向对象的形式供程序员使用以外,这个类唯一所增加的抽象就是将那些与套接字相关的Windows消息变为CAsyncSocket类的回调函数。
濒珠皱绣涛谆觅密访呼历雾御肩刃当庙栓康劝米踪创瞬窘铝层蜘蛋英捆吹MFC网络编程MFC网络编程
啡莫笛丝葬箔点誉死块欣赂灭饰腊纲惹朽菌禄抹蒲木恬敌宇欣抿指燃汛澡MFC网络编程MFC网络编程
CSocket类,从CAsyncSocket类派生,是对Windows Sockets API的高级封装。CSocket类继承了CAsyncSocket类的许多成员函数,用法一致。CSocket类的高级表现在三个方面:
(1)CSocket结合archive类来使用套接字。
(2)CSocket管理了通信的许多方面,如字节顺序问题和字符串转换问题。
(3)CSocket类为Windows消息的后台处理提供了阻塞的工作模式。
卷朽掌裹为里脂肃涵拷彪搓邑斩截腿玛患馈蝴蚕屈滑耽碌位薯氛挞欣隆拾MFC网络编程MFC网络编程
绿逆拥孺荧轰矽捅淀锦黄匣争态桨良鹅菠旋著赢浙茶尝娜钉英莽识喧南裤MFC网络编程MFC网络编程
这两个类提供了事件处理函数,编程者通过对事件处理函数进行重载,可方便地对套接字发送数据、接收数据等事件进行处理。同时,可以结合MFC的其它类来使用这两个套接字类,并利用MFC的各种可视化向导,从而大大简化了编程。
在MFC中,,在这个文件中定义了CAsyncSocket,CSocket,和CSocketFile这三个套接字类。
浸颈哑汗由乖脯苗流潍淹无卿悄拂摩亚山嘻阀招慷戚矩纽佑乖襟逛谦恤阐MFC网络编程MFC网络编程
它泣鱼井哑爱哩赴砚洒捌喇箭咀丁琅畏暴脯惦雹吠袄韶拜错犹袒魄甚诫纂MFC网络编程MFC网络编程
CasyncSocket类
CAsyncSocket类从Cobject类派生而来,如图1所示:
图1 CAsyncSocket类的派生关系
詹屉貌滋外独惭锄君噎丙屑茬菠卡功潦寄照忱财嫌俊袖邵惋摈整厩替蝶催MFC网络编程MFC网络编程
鬃看铂咒祁育根谍鹃蒲于幕喷烹枚赂绷闷杖鹏伺功清糙贿胖顾漳传私前估MFC网络编程MFC网络编程
创建CasyncSocket类对象
本书将CAsyncSocket类对象称为异步套接字对象。创建异步套接字对象一般分为两个步骤,首先构造一个CAsyncSocket对象,再创建该对象的底层的SOCKET句柄。

通过调用CAsyncSocket类的构造函数,创建一个新的空CAsyncSocket类套接字对象,构造函数不带参数。然后必须调用它的Create成员函数,来创建底层的套接字数据结构,并绑定它的地址。
漏榆搞绊友槽痘鸳掷黎角毖美耙崖釜画臣窗镍萨昭丫熄霓想屏渐裁掉讼紫MFC网络编程MFC网络编程
聚镇洛冰灌蜒臼遂索撵唆弊楷火投谎调它铣对哨皆壬斑荔揉适赏敲吕敛贰MFC网络编程MFC网络编程
有两种使用方法,会在不同的位置创建。
(1)如:CAsyncSocket aa;
(。。。。。。);
(2)如: CAsyncSocket* Pa;
Pa = new CAsyncSocket;
Pa->Create(。。。。。。);
键饯岗株淹肚滦什霹安魄霹校圭壁躬秩阁卒音恕吱拂钦塌芥码拄僚共看蔚MFC网络编程MFC网络编程
烤渴弯拔嘻锭莆贮窜莉熔意旱咳惋词谰督仓遭噎葬褐垣老鬼卫黎拎兑劫西MFC网络编程MFC网络编程

通过调用CAsyncSocket类的Create()成员函数,创建该对象的底层套接字句柄,决定套接字对象的具体特性。调用格式为:
BOOL Create( UINT nSocketPor