- 0
- 0
- 约3.2千字
- 约 20页
- 2019-09-10 发布于辽宁
- 举报
第6章 WinInet编程 WinInet是Windows Internet扩展应用程序高级编程接口,是专为开发具有Internet功能的客户端应用程序而提供的。它有两种形式:WinInet API包含一个C语言的函数集(Win32 Internet functions),MFC WinInet类层次则是对前者的面向对象的封装。 6.1 MFC WinInet 类 6.1.1 概述 微软在MFC基础类库中提供了WinInet类,它是对于WinInet API函数的封装,是对所有的WinInet API函数按其应用类型进行分类和打包后,以面向对象的形式,向用户提供的一个更高层次上的更容易使用的编程接口。 利用MFC WinInet类来编写Internet应用程序还具有以下优点: (1)提供缓冲机制。 (2)支持安全机制。 (3)支持Web代理服务器访问。 (4)缓冲的输入/输出。 (5)轻松简洁。 6.1.2 MFC WinInet所包含的类 MFC WinInet类在Afxinet.h包含文件中定义,不同的类是对不同层次的HINTERNET句柄的封装:分为以下几种: 1.CInternetSession类 代表应用程序的一次Internet会话,它封装了HINTERNET会话根句柄,并把使用根句柄的API函数,如OpenURL、InternetConnect等,封装为它的成员函数。 2.连接类 包括CInternetConnection类和它的派生类CFtpConnection类、CHttpConnection类、和CGopherConnection类。 3.文件类 文件类首先包括CInternetFile类和由它派生的CHttpFile类和CGopherFile类, 另外,由CFileFind类派生的用于文件查找的CFtpFileFind类和CGopherFileFind类也应归入文件类的层次。 4.CInternetException类 CInternetException类代表MFC WinInet类的成员函数在执行时所发生的错误或异常。 图6.6 MFC WinInet 类的关系 6.1.3 使用WinInet类编程的一般步骤 (1)创建CInternetSession类对象,创建并初始化Internet会话。 (2)利用CInternetSession类的QueryOption或SetOption成员函数,可以查询或设置该类内含的Internet请求选项,这一步是可选。 (3)创建连接类对象,建立CInternetSession对象与网络服务器的连接,也就是应用程序与网络服务器的连接。 (4)创建文件检索类对象,对服务器进行检索 (5)如果需要使用异步操作模式,可以重载CInternetSession类的OnStatusCallback函数,并启动应用程序使用状态回调机制。重载相关函数,加入自己的代码。 (6)如果还想更紧密地控制对于服务器文件的访问,可以进一步创建文件类对象实例,完成文件查找或文件读写操作。 (7)创建CInternetException类对象实例,处理错误。 (8)关闭各种类,将资源释放给系统。 以下各小节按照编程步骤的顺序说明各种WinInet类的用法。 6.1.4 创建CInternetSession类对象 创建CInternetSession类对象,将创建并初始化Internet会话。像其它类一样,创建CInternetSession类对象需要执行该类的构造函数,它的原型是: CInternetSession( LPCTSTR pstrAgent = NULL, DWORD dwContext = 1, DWORD dwAccessType = PRE_CONFIG_INTERNET_ACCESS, LPCTSTR pstrProxyName = NULL, LPCTSTR pstrProxyBypass = NULL, DWORD dwFlags = 0); 表6.1简要列出CInternetSession类的成员函数名称、它们的返回值类型和功能说明。这是对那些使用Internet会话根句柄的WinInet API的相关函数的封装。 6.1.5 查询或设置Internet请求选项 创建CInternetSession类对象后,可以调用它的QueryOption成员函数查询Internet请求选项,调用它的SetOption成员函数来设置这些选项。 6.1.6 创建连接类对象。 通过调用CInternetSession对象的GetFtpConnection、GetHttpConnection、GetGopherConnection成员函数,可以分
您可能关注的文档
- 网络编程实用教程第二版_第1章.ppt
- 网络编程实用教程第二版_第2章.ppt
- 网络编程实用教程第二版_第3章.ppt
- 网络编程实用教程第二版_第4章.ppt
- 网络编程实用教程第二版_第5章.ppt
- 网络编程实用教程第二版_第7章.ppt
- 网络编程实用教程第二版_第8章.ppt
- 网络编程实用教程第二版_第9章.ppt
- 网络编程实用教程第二版_第10章.ppt
- 网络编辑实务1课程解析.ppt
- 2026广东银行分行相关岗位招聘备考题库含答案详解ab卷.docx
- 2026广东肇庆市广宁县机关事务管理局招聘安保人员2人备考题库带答案详解(完整版).docx
- 2026广发银行南昌分行社会招聘备考题库附参考答案详解(b卷).docx
- 2026广东阳江市阳春市高校毕业生就业见习招募15人备考题库(第二期)含答案详解(培优a卷).docx
- 2026广西北海市市场监督管理局招录公益性岗位人员1人备考题库带答案详解(培优a卷).docx
- 2026广发银行南昌分行社会招聘备考题库含答案详解(精练).docx
- 2026广东职业技术学院第一批非事业编制教师招聘4人备考题库附参考答案详解(预热题).docx
- 2026广东省农业科学院水稻研究所招聘科研辅助人员1人备考题库附参考答案详解(实用).docx
- 2026广西崇左凭祥市退役军人服务中心见习人员招聘1人备考题库及答案详解(基础+提升).docx
- 2026广西北海市市场监督管理局招录公益性岗位人员1人备考题库及一套答案详解.docx
最近下载
- 园林工程计量与计价全套教学课件.pptx
- 比较思想政治教育(第二版) 005 比较思想政治教育(第二版) 第五章.pptx VIP
- TSZEVA009-2024 电动自行车公共充电设施 第1部分:公共充电桩及编制说明.pdf VIP
- 干细胞复合物及其制备方法和PGA在治疗骨骼或器官损伤的产品中的应用.pdf VIP
- 2026元旦主题班会:马年猜猜乐,马年成语(30词)课件(共34张PPT).pptx VIP
- 吸塑设计及制造教程文件.ppt VIP
- 2025年兵检的心理测试试题及答案.docx VIP
- 市政公用设施建设项目经济评价办法与参数.pdf VIP
- 中职《金属加工与实训-基础常识与技能训练》--第5章-金属冷加工基础(中)-云天课件.ppt VIP
- TSZEVA009-2024 电动自行车共享换电设施 第1部分:共享换电柜及编制说明.pdf VIP
原创力文档

文档评论(0)