WinInet, WinHttp, Winsock, ws2_32的基本解释
来源:互联网 发布:聚类算法分类 编辑:程序博客网 时间:2024/04/29 09:56
在Windows平台进行网络程序开发, 可以使用不同的库, 但是最常用的还是微软自己开发的库。具体说来,有:
(1)Winsock,工作于网络层和传输层的开发库,对于编写TCP,UDP,以及原始IP通信程序非常合适。函数原形也基本符合Unix socket标准。Windows平台上的大多数程序,如QQ,讯雷等都基于其开发。
(2)ws2_32,是Winsock的升级版本,在兼容的基础上增加了不符合Unix socket标准,但更适合Windows平台的库函数,一般以WSA*开头。
现代的大多数Windows平台程序也都开始依赖于此库。
(3)WinInet,Windows Internet扩展库,工作于应用协议层,提供了http,ftp,gopher协议的实现,为基于以上三种协议的程序开发提供基础平台,需要说明的是,尽管WinInet工作于应用层,但其本身wininet.dll的实现并不依赖于winsock.dll或ws2_32.dll,而是独立存在的。至少目前的版本是这样。基于WinInet的应用程序最著名的例子就是IE了。
(4)WinHttp,也是工作于应用协议层,提供了http协议的实现。看起来与WinInet有重复的部分,没错,WinHttp就是为了替换WinInet中的http部分的,它更加健壮稳定,而且还为http服务器端开发提供了库函数。如果进行现代http的开发,建议使用WinHTTP而不是WinInet。使用WinHTTP进行开发的著名例子就是Google的浏览器Chrome,但是Chrome2.0以后版本google放弃了winhttp而是使用了自己开发的http库,这也是为了使chrome实现跨平台的重要举措。另外,WinHttp.dll也不依赖于winsock或ws2_32,也是独立运行的。
如果基于socket编程的话,Winows平台与其它平台函数基本相同,实现跨平台比较容易。
如果基于http进行编程的话,不同平台库差别很大,如果不考虑跨平台使用WinHttp,如果考虑跨平台可以考虑使用libwww。
另外,wsock和wininet或winhttp也可以同时使用。
- WinInet, WinHttp, Winsock, ws2_32的基本解释
- WinInet, WinHttp, Winsock, ws2_32的基本解释
- WinInet, WinHttp, Winsock, ws2_32的基本解释
- WinInet, WinHttp, Winsock, ws2_32的基本解释
- winsock,ws2_32,WinInet,WinHttp对比
- winsock,ws2_32,WinInet,WinHttp对比
- WinInet, WinHttp, Winsock, ws2_32的区别和联系
- WinInet, WinHttp, Winsock, ws2_32的区别和联系
- WinInet, WinHttp, Winsock, ws2_32的区别和联系
- WinInet, WinHttp, Winsock, ws2_32的区别和联系
- wininet、winhttp、winsock的区别
- WinInet、winhttp、winsock的含义和区别
- WinINet 与 WinHTTP简介
- [转]使用WinINet和WinHTTP
- wininet,winhttp,xmlhttprequest,ServerXmlHttpRequest区别
- Winsock,Wininet 和 Urlmon
- Winsock之WinInet
- Winsock基本的api
- 第一天,2013-04-09,堕落的我
- Java之美之Java 程序的执行过程
- VS2010 如何添加H文件目录和LIB目录
- chrome 新浪微博分享插件
- Android中滑屏实现----手把手教你如何实现触摸滑屏以及Scroller类详解
- WinInet, WinHttp, Winsock, ws2_32的基本解释
- Source code license
- 一些笔试题
- VC++常见的108个小技巧
- 又一些面试题
- 悟透JavaScript
- ByteArrayOutputStream, ByteArrayInputStream
- IronPython学习一
- Android中layout过程详解