首页 > 代码库 > 为何AutoCAD2008的.NET扩展可以基于.NET 3.5

为何AutoCAD2008的.NET扩展可以基于.NET 3.5

我们知道,AutoCAD2008(也包括2007和2009)的.NET版本为2.0,但其.NET扩展的“目标框架”可以选择.NET Framework 3.5,这是为何呢?


在这篇blog找到了答案

Using .NET Framework 4.0 in various AutoCAD versions

We are currently compiling our extensions with .NET 3.5 (which uses CLR 2.0), and they work fine for AutoCAD 2008-2011.

请看这个对照表

Visual Studio                                 CLR           .NET Framework
----------------------------------------------------------------------------------------
Visual Studio .NET (Ranier)                   1.0.3705      1.0
Visual Studio 2003 (Everett)                  1.1.4322      1.1
Visual Studio 2005 (Whidbey)                  2.0.50727     2.0
Visual Studio 2005 with .NET 3.0 Extensions   2.0.50727     2.0, 3.0
Visual Studio 2008 (Orcas)                    2.0.50727     2.0 SP1, 3.0 SP1, 3.5
Visual Studio 2008 SP1                        2.0.50727     2.0 SP2, 3.0 SP2, 3.5 SP1
Visual Studio 2010 (Hawaii)                   4.0.30319     4.0
即使.NET Framework版本不一致,但只要CLR版本一致,程序是兼容的。


以下列举了部分AutoCAD版本的历史、与VS版本的对应关系

ACAD Version history
Version           Internal          version          AutoCAD versions                 VS/VC versions
DWG 2000 AC1015AutoCAD 2000, AutoCAD 2000i, AutoCAD 2002  (VC6.0) R15
DWG 2004 AC1018AutoCAD 2004, AutoCAD 2005, AutoCAD 2006   (VS2002 VC7.0) R16
DWG 2007 AC1021AutoCAD 2007, AutoCAD 2008, AutoCAD 2009   (VS2005 VC8.0) R17
DWG 2010 AC1024AutoCAD 2010, AutoCAD 2011, AutoCAD 2012   (VS2008 VC9.0) R18
DWG 2013 AC1027AutoCAD 2013, AutoCAD 2014 ,AutoCAD 2015?  (VS2010 VC10) R19


于是不难看出,AutoCAD2007-2012,的扩展程序均可以基于.NET Framework 3.5开发。