Version history of VC++, MFC and ATL
I have tried to assemble together information about the Visual C++ releases, the compiler and the frameworks (MFC and ATL). You can find these on many places, but it is often incomplete or focused on something particular (Visual Studio, C++ compiler, framework, etc.).
The table below is the result of this effort. It is incomplete because it’s not easy to find information about products released more than two decades ago, but if you can help filling in the gaps please drop a comment with the information you have and I will update the table.
| Product | Codename | Release date | C++ version | _MSC_VER | MFC version | _MFC_VER | ATL version | _ATL_VER |
|---|---|---|---|---|---|---|---|---|
| C 1.0 | 100 | |||||||
| C 2.0 | 200 | |||||||
| C 3.0 | 300 | |||||||
| C 4.0 | 400 | |||||||
| C 5.0 | 500 | |||||||
| C 6.0 | 1990 | 600 | ||||||
| C/C++ 7.0 | 1992 | 700 | 1.0 | 0x0100 | ||||
| Visual C++ 1.0 | Caviar | 1993 | 1.0 | 800 | 2.0 | 0x0200 | ||
| Visual C++ 1.1 | Barracuda | 1993 | 1.1 | |||||
| Visual C++ 1.5 | Dolphin | 1993 | 1.5 | 850 | 2.5 | 0x0250 | ||
| Visual C++ 1.51 | 1.5 | |||||||
| Visual C++ 1.52 | 1.52 | |||||||
| Visual C++ 1.52b | 1.52b | |||||||
| Visual C++ 1.52c | 1.52c | |||||||
| Visual C++ 2.0 | 2.0 | 900 | 3.0 | 0x0300 | ||||
| Visual C++ 2.1 | 2.1 | |||||||
| Visual C++ 2.2 | 2.2 | |||||||
| Visual C++ 4.0 | Olympus | 1995-12-11 | 4.0 | 1000 | 4.0 | 0x0400 | ||
| Visual C++ 4.2 | 4.2 | 1020 | 4.2 | 0x0420 | ||||
| 1.0 | 0x0100 | |||||||
| 1.1 | 0x0110 | |||||||
| 2.0 | 0x0200 | |||||||
| Visual Studio 97 | Boston | 1997-04-28 | 5.0 | 1100 | 4.21 | 0x0421 | 2.1 | 0x0210 |
| Visual Studio 6.0 | Aspen | 1998 | 6.0 | 1200 | 6.0 | 0x0600 | 3.0 | 0x0300 |
| Visual Studio .NET 2002 | Rainier | 2002 | 7.0 | 1300 | 7.0 | 0x0700 | 7.0 | 0x0700 |
| Visual Studio .NET 2003 | Everett | 2003 | 7.1 | 1310 | 7.1 | 0x0710 | 7.1 | 0x0710 |
| Visual Studio 2005 | Whidbey | 2005 | 8.0 | 1400 | 8.0 | 0x0800 | 8.0 | 0x0800 |
| Visual Studio 2008 | Orcas | 2008 | 9.0 | 1500 | 9.0 | 0x0900 | 9.0 | 0x0900 |
| Visual Studio 2010 | Dev10 | 2010 | 10.0 | 1600 | 10.0 | 0x0A00 | 10.0 | 0x0A00 |
| Visual Studio 2012 | Dev11 | 2012-08-15 | 11.0 | 1700 | 11.0 | 0x0B00 | 11.0 | 0x0B00 |
| Visual Studio 2013 | Dev12 | 2013-10-17 | 12.0 | 1800 | 12.0 | 0x0C00 | 12.0 | 0x0C00 |
| Visual Studio 2015 | Dev14 | 2015-07-20 | 14.0 | 1900 | 14.0 | 0x0E00 | 14.0 | 0x0E00 |
Several notes on the history of VC++:
- Visual Studio 97 was the first product that bundled together several products (Visual C++, Visual Basic, Visual J++)
- Visual Studio 6.0 is the only version of Visual Studio that was not named after the release year, but the version number
- MFC was first release in 1992 with C/C++ 7.0
- MFC 6.0 released with Visual Studio 6 did not change the name of the MFC DLLs, that were still named mfc42.dll
- ATL was first released in between Visual C++ 4.2 and Visual Studio 97. The first release of the framework to be included in a product was ATL 2.1 released with Visual Studio 97
- Visual C++ version 3.0 was skipped to 4.0 to align the product version with the MFC version, whose next version was 4.0
- Visual Studio 2015, the compiler and framework version are 14.0 and not 13.0, a number which was skipped (for the good old superstitions)
- _MFC_VER and _ATL_VER macros were initially incorrectly documented in MSDN as 0x1000 instead of 0x0A00
References
- Rico Mariani’s history of Visual Studio
- Microsoft Visual Studio History
- Visual Studio family codenames
- The History of ATL
Version history of VC++, MFC and ATL的更多相关文章
- VC学习笔记---ATL MFC CLR三个库的区别
MFC.ATL和CLR是VC2005内置的三大库,涵盖了Windows的各种开发方法和开发应用.当然关于C++开发的库不止这三个,不过这三个是微软推荐. 从编程所处层次而言,WIN32为最底层,其次是 ...
- 一些非常好的VC++/MFC开源项目链接
Introduction List of some of the best Open Source projects written in VC++/MFC. Background Codeproje ...
- Some Very Good VC++/MFC Resources Besides Codeproject.com
Some Very Good VC++/MFC Resources Besides Codeproject.com http://www.naughter.com/ (VC++/MFC huge co ...
- VC++/MFC(VC6)开发技术精品学习资料下载汇总
工欲善其事,必先利其器,VC开发MFC Windows程序,Visual C++或Visual Studio是必须的,恩,这里都给你总结好了,拿去吧:VC/MFC开发必备Visual C++.Visu ...
- MFC,ATL,CLR简介
MFC.ATL和CLR是VC2005内置的3大库,涵盖了windows的各种开发方法和开发应用.当然关于 C++ 开发的库不止这3个,不过这3个是微软推荐.从编程所处层次而言,WIN32为最底层,其次 ...
- [SharePoint 2010] Copy list item with version history and attachment
private void MoveItem(SPListItem sourceItem, SPListItem destinationItem) { if (sourceItem == null || ...
- 在VS中MFC、ATL与WIN32有什么联系或区别?
有时候遇到一些初学者问我这个问题:在VS中使用MFC和ATL与使用WIN32有什么联系或区别?通俗来说,win32是通过调用windows api去实现需要的功能.而MFC和ATL是封装好的类库,包含 ...
- VC ++ MFC activex 控件获取连接的VPN 信息
vc++ MFC 进行activex 控件的开发步骤就不用多写了,只是简单的说明一下方法,以及具体的代码: 使用的类库是 windows 系统的 rasapi32.dll 记住需要添加的头文件如下 ...
- Sunrise Release Version History
Sunrise Release Version History 1.4.1.0 1.1.0.0 1.0.1.0
随机推荐
- MFC通过txt查找文件并进行复制-备忘
MFC基于对话框的Demo txt中每行一个23位的卡号. 文件夹中包含以卡号命名的图像文件.(fpt或者bmp文件) 要求遍历文件夹,找到txt中卡号所对应的图像文件,并复制出来. VC6.0写的. ...
- css之absolute绝对定位(绝对定位特性)
学习了绝对定位以后,对此进行一个总结,啦啦啦啦~ 绝对定位特性 1.破坏性 破坏了原有的位置,从文档流里脱离出来 2.包裹性 如果下面这种情况,父级元素将不会有高度和宽度,失去原有的大小
- SpringMVC对异常进行全局处理,并区分对待ajax和普通请求
异常信息应统一进行处理. 程序员开发过程中,应尽量少用try..catch.避免因为catch造成的业务歧义.而在web开发中,普通的页面提交动作,和ajax提交动作,处理方式不一样,因为跳转后直接显 ...
- Jquery动态在td中添加checkbox
如图:想要在这个id为headId的<td>中,用jquery动态添加checkbox 代码如下 : data是我用ajax 从后台获取的数据,里面含有若干个user类,我想把所有的人名字 ...
- java多线程详解(7)-线程池的使用
在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了, 这样频繁创建线程就会大大降低系 ...
- 「脑洞」图片转HTML(支持动画)
也许是受到很久以前看到的这玩意儿的原因:The Shapes of CSS 现在开脑洞写了个自动转换,顺便支持了动画……嗯,纯 CSS (:з」∠) 主要步骤就是用 Python 读图片,然后把像素全 ...
- Ceph剖析:Leader选举
作者:吴香伟 发表于 2014/09/11 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 Paxos算法存在活锁问题.从节点中选出Leader,然后将所有对数据 ...
- IOS 支付、性能调试、IPv6兼容支持等
微信支付 支付宝支付 性能调试 IPv6兼容支持 APP引导页框架
- Java Web1
Java Web应用的核心技术是Java Server Page和Servlet.此外,开发一个完整的Java Web应该涉及一下几种概念及技术. 1.Servlet组件 Servlet响 ...
- 拒绝try.catch泛滥,学习委托有感
读了一位博友关于使用委托避免重复的try.catch的随笔(原文地址:http://www.cnblogs.com/foolishfox/archive/2010/07/30/1788416.html ...