第14章开发 Internet应用程序 Internet应用程序的开发通常包括 Internet服务端和客户端的应用程序, Microsoft提供了大量的AP函数来支持这 两种程序,客户端应用程序主要通过 Internet协议(如 Gopher, FTp, htTp等)来从 网络服务器上获取数据,提供访问 InternetE功能,服务器端应用程序则用 来支持HTP、FTP或 Gopher等类型的服 务
1 第14章 开发Internet应用程序 Internet应用程序的开发通常包括 Internet服务端和客户端的应用程序, Microsoft提供了大量的API函数来支持这 两种程序,客户端应用程序主要通过 Internet协议(如Gopher,FTP,HTTP等)来从 网络服务器上获取数据,提供访问 Internet的功能,服务器端应用程序则用 来支持HTTP、FTP或Gopher等类型的服 务
141 ternet应用程序开发的几种类型 使用 WinInet类开发 Internet应用程序: WinInet类支持 HTP、FTP和 Gopher等标准的协议 使用 Windows socke开发 Interne应用程序: Winsock 标准定义了一个DLL接口来连接 EInternet,MFC使用 CAsyncSocket和 CSocket类对接口进行了封装。 使用消息收发 API(MAP: Message AP)开发 Internet应 用程序:使用MAPI可以很方便的向其他应用程序发 送电子邮件、语音邮件或传真等功能
2 14.1 Internet应用程序开发的几种类型 使用WinInet类开发Internet应用程序:WinInet类支持 HTTP、FTP和Gopher等标准的协议 使用Windows Socket开发Internet应用程序:Winsock 标准定义了一个DLL接口来连接Internet,MFC使用 CAsyncSocket和CSocket类对接口进行了封装。 使用消息收发API(MAPI:Message API) 开发Internet应 用程序:使用MAPI可以很方便的向其他应用程序发 送电子邮件、语音邮件或传真等功能
142 Winne开发简介 用 Winne开发程 序的优点 隐藏协议细节,简化编程:可不必深入了解协议,而 使用 Win Socket编程,需理解网络通信及协议基本原理 熟悉的编程接口: Winlnetap函数和很多WnAP函数很 相似,这对有编程经验的程序员来说是很方便的。 稳定性好,不要求程序与底层直接联系: WinInet隐藏 了协议的具体细节,使得程序不必直接使用各种协议 支持数据缓存: Wininet函数为所有的协议提供缓存 能力,程序员只需关心数据而不用去管理数据缓存 支持多线程:由于 WinInet函数在内部处理多线程的并 发问题,因此 WinInet函数支持多线程,在多线程中可 以调用各种 WinInet函数而不用担心发生问题或死锁
3 14.2 WinInet开发简介 用WinInet开发程 序的优点 隐藏协议细节,简化编程:可不必深入了解协议,而 使用WinSocket编程,需理解网络通信及协议基本原理 熟悉的编程接口:WinInet API函数和很多WinAPI函数很 相似,这对有编程经验的程序员来说是很方便的。 稳定性好,不要求程序与底层直接联系:WinInet隐藏 了协议的具体细节,使得程序不必直接使用各种协议 支持数据缓存:WinInet函数为所有的协议提供缓存 能力,程序员只需关心数据而不用去管理数据缓存 支持多线程:由于WinInet函数在内部处理多线程的并 发问题,因此WinInet函数支持多线程,在多线程中可 以调用各种WinInet函数而不用担心发生问题或死锁
143 Winne类介绍 WinInet类是一个总称,目前的版本中分为四组 CInternetsession类 CInternetconnection(连接类) CFilefind类( Internet文件查找类) CInternetFile类和 CGopherLocator类
4 14.3 WinInet类介绍 WinInet类是一个总称,目前的版本中分为四组 • CInternetSession类 • CInternetConnection (连接类) • CFileFind类(Internet文件查找类) • CInternetFile类和CGopherLocator类
14.3.1 CInternetSessione CInternetsession类直接继承自 Cobject类, 该类用来建立与某个 Internet服务器的会 话。还可以向代理服务器描述连接,如 果应用程序所使用的 nternet连接必须保 持一段时间,则可以在 CWinApp类中创 建相应的 Clnternetsession成员
5 14.3.1 CInternetSession类 CInternetSession类直接继承自CObject类, 该类用来建立与某个Internet服务器的会 话。还可以向代理服务器描述连接,如 果应用程序所使用的Internet连接必须保 持一段时间,则可以在CWinApp类中创 建相应的CInternetSession成员