vc6快10岁了,呵呵~~蛮经典的东西。
以下SDK和库是我自己收集的,绝大部分我都使用过,最重要的是能在VC6下使用。它们之间各自有各自的功能,不需要比较,除非是相同类型的库,例如XML解析器,我才比较一下,排名也不分先后,并且描述的简略不代表个人的感情色情。^.V,很多库我都喜欢,但我只是简单说两句。例如MFC,STL,ICE等等。希望大家的开发效率能提高不少。有些库或者SDK没有罗列其中,大家可以补上。
Windows server 2003 r2 SDK(最新的Windows SDK是Vista版的)
提供最新操作系统的API接口,支持Windows2003r2以及以前的系统,如果想使用一些平台特性,这开发包是必备的。
http://www.microsoft.com/downloads/info.aspx?na=22&p=22&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=&u=%2fdownloads%2fdetails.aspx%3fFamilyID%3de15438ac-60be-41bd-aa14-7f1e0f19ca0d%26DisplayLang%3den
SDK属于Visual C++的一部分,但其自带的版本较老,已经不适合一些产品了,例如WinXP等.该SDK包含以下MS产品的SDK:
Windows,Office,Windows Script(这个应该算是个产品吧..WScript/CScript),netmeeting,IIS, Internet Explorer,MS XML,GDI+,Windows Media Services,DirectShow...
包含以下的程序库:ATL,MFC,OpenGL...
更多信息请查看SDK或者MSDN自带的帮助目录.
netmeeting SDK
想将远程桌面,多人会议,视频,文件传送,电子白板功能嵌入到你的程序或者网站中吗?用它就没错了.
内含在Windows server 2003 r2 SDK
Internet Explorer SDK
可以用它来解析网页,从而开发出自己特别的需求的“新浏览器”,也可以扩展IE。遨游,TT等外壳浏览器就属于这类应用。QZONE也属于,新版本的QZONE是采用自动化的方式去扩展。
内含在Windows SDK里。
WMEncoderSDK
Windows Media编码器的开发包,可以从影像捕捉设备或桌面画面录制,亦提供文件格式转换的功能。
------------
是一套容易使用,而且功能强大的软件,提供使用者自行录制影像的功能,可以从影像捕捉设备或桌面画面录制,亦提供文件格式转换的功能。主要的特色在于容易使用、高品质编码、增强的可程序化与管理,特点为:新的使用者界面和向导,更容易设定与制作影片,用来提供网络现场播放或需求播放,并支持多重来源,可以立即切换来源,并可监视编码程序进行时的资料,如影像大小、资料流量等等。新的编码能力,支持de-interlacing、inverse telecine和屏幕捕捉,能有更好的输出品质,能从320*240*60fps到640*480*30fps,捕捉文件最大可到30GB,支持的捕捉设备包括Winnov、ATI、Hauppauge,以及USB视讯摄影机等。Windows Media Encoder SDK提供网站开发者全自动的编码控制,可从网络(LAN)远端控制,或透过API存取或ASP控制
----------------
http://www.microsoft.com/downloads/details.aspx?familyid=5691BA02-E496-465A-BBA9-B2F1182CDF24&displaylang=en
WMPlayerSDK
为Windows Media Player开发插件或者调用其组件的开发包。
http://www.microsoft.com/downloads/details.aspx?FamilyID=e43cbe59-678a-458a-86a7-ff1716fad02f&DisplayLang=en
detours
Microsoft自己出的一个PE镜像操作包,可以轻松实现API Hook,修改IAT等。
http://research.microsoft.com/research/downloads/Details/10E5D78C-592C-419D-A53E-BAE8DBD81801/Details.aspx
WTL(Windows Template Library)
一个基于模板技术、简洁而又完整的界面库,能生成小巧的应用程序,厌倦了庞大的MFC,可以考虑使用它来开发界面,除了对界面提供支持,还提供了一系列的辅助类,例如:CString,CFindFile等。8.0支持WinCE,以及Vista的特性。
http://www.microsoft.com/downloads/details.aspx?FamilyID=e5ba5ba4-6e6b-462a-b24c-61115e846f0c&DisplayLang=en
DirectX SDK
能出色地完成高速的实时动画渲染、交互式音乐与环境音效、高效多媒体数据处理等任务。Windows下游戏开发一般使用它。
http://www.microsoft.com/downloads/details.aspx?familyid=4b78a58a-e672-4b83-a28e-72b5e93bd60a&displaylang=en
DDK/IFS DDK(Windows Driver Development Kit)
用于开发Windows驱动程序的开发包,装了它VC也能开发驱动程序,不过推荐使用DDK带的build工具进行编译。IFS DDK可以开发文件系统驱动。
http://www.microsoft.com/whdc/devtools/ddk/default.mspx
MS CHART
可以在程序里面画出专业的柱状图,曲线图等专业的统计图形。
内含在VB或者office的安装包里。
ATL
用于开发COM的一个框架,有了它,写COM就轻松很多了。除了对COM的支持,还提供了CImage(GDI+的包装类,很好用)、CRegKey(注册表的支持)、CAtlRegExp(正则表达式)等。
VC自带或者包含在Windows SDK中
GDI+ SDK
GDI+是Microsoft的新的图形编程接口,具有简单、易用等特性。支持多种图象格式,不必再为jpg,gif等格式解码而发愁。对比GDI,有以下新特性,支持渐变画刷、对立的路径对象、矩阵对象、多种图片格式等。WinXP以及以上系统自带Gdi+所需的DLL。
包含在新版Visual Studio或者包含在Windows SDK中
CxImage
一套图象操作代码,支持多种格式:包括bmp,jpg,png,gif(静态和动态都支持),wbmp,tif,wmf,pcx,tga,ico等.基于GDI的操作而不是GDI+.并提供了一系列的算法,例如缩放,旋转,灰度等等.
http://www.xdp.it
MFC
一个非常老(比VC6还老)而且优秀的程序框架,是对Windows API源码级的封装,有不少的优秀软件就是用它写的。
包含在Visual Studio中
Xtreme ToolkitPro/BCGControlBar Professional
非常优秀MFC扩展库,用于界面开发,它们提供了仿Office,Visual Studio等MS产品外观的控件.
Xtreme有免费版本CJLibrary http://www.codejock.com/
BCG在VS2008里是MFC的一部分了,http://www.bcgsoft.com/
WFC(Win32 Foundation Classes)
一个MFC扩展库,封装了那些MFC没有封装的Win32 API..例如:CDesktop,CMixer,CRegistry等等
http://www.codeproject.com/library/wfc.asp
Microsoft Speech SDK
文本朗读和语音识别的开发包。也支持中文发音。
http://www.microsoft.com/speech
http://www.microsoft.com/downloads/details.aspx?FamilyID=5e86ec97-40a7-453f-b0ee-6583171b4530&DisplayLang=en
MS Agent
WinXP搜索里的那只黄色小狗或者Office2003里面的助手就是MS Agent,用这个开发包就可以控制他们。
包含在Visual Studio或者包含在Windows SDK中
MS XML/tinyXML
用于解析XML文件的开发包。
MS XML功能强大,对中文有完美的支持.
tinyXML体积小,带源代码.
(其它XML解析器都不怎么好,IBM的XML4C功能虽强,可是它的DLL有12M那么大,Xerces c++不能支持中文,Libxml要支持中文的话需要自己写转换函数)
MS XML:http://www.microsoft.com/downloads/details.aspx?FamilyID=993c0bcf-3bcf-4009-be21-27e85e1857b1&DisplayLang=en
tinyXML:www.sourceforge.net/projects/tinyxml
OpenGL
是个专业的3D程序接口,是一个功能强大,调用方便的底层3D图形库。OpenGL是个与硬件无关的软件接口,可以在不同的平台工作。
包含在Visual Studio或者包含在Windows SDK中
STL
非常优秀的C++标准库,提供数据容器以及通用算法等的C++库.
包含在Visual Studio
Boost
一套开放源代码、高度可移植的C++库,提供数值计算、泛型编程、元编程、平台API等支持。常用的有Regex,Lambda,smart_ptr等等
http://www.boost.org
WinPcap
最常用的就是用它来捕获网络封包。很多网络程序,以前用过的一个电信的拨号器,Ethereal等都是使用这个。
http://winpcap.polito.it
zLib
一个开源的数据无损压缩库.最方便的是它可以压缩内存缓冲,而且速度快,很多网络游戏都使用了它压缩数据包.
http://www.gzip.org/zlib/
Xvid/Divx
视频编码/解码库.(Divx是个商业产品,Xvid是个开源项目)
www.xvid.org
ACE/ICE
ACE全称adaptive communication enviroment,是一套C++的通信库。它提供了socket/threading/memory management等多种系统调用的面对对象的wrapper,使C++通信软件开发更加简单。
ICE(Internet Communications Engine)一种现代的面向对象中间件,可用于替代像CORBA或COM/DCOM/COM+这样的中间件,特点是开发简易,运行效率高。可以开发出电信级别的应用。
ACE:http://www.cs.wustl.edu/~schmidt/ACE.html
ICE:http://www.zeroc.com/
crypto++
实现了各种公开密钥算法、对称加密算法、数字签名算法、信息摘要算法以及其相关的其它密码算法等等.其实我只用里面的md5,crc32和aes.
http://sourceforge.net/projects/cryptopp
WxWindows (跨平台的GUI库)
类层次极像MFC,通过多年的开发也是一个日趋完善的GUI库,完全开放源代码的。
http://www.wxwindows.org/
blitz (高效率的数值计算函数库)
Blitz++ 是一个高效率的数值计算函数库,它的设计目的是希望建立一套既具像C++ 一样方便,同时又比Fortran速度更快的数值计算环境。
http://folk.uio.no/patricg/blitz/html/index.html