为什么 AutoCAD 插件依赖于特定的 Visual Studio 版本?

mam*_*ack 2 visual-studio autocad-plugin

Autodesk 在这里提到 需要使用特定的 Visual Studio 版本开发 AutoCAD 插件,例如

AutoCAD 2016(支持 Microsoft Visual Studio 2012 和 2013)

AutoCAD 2015(支持 Microsoft Visual Studio 2012)

...

为什么会这样?我了解您需要根据您的 AutoCAD 版本使用特定的 .NET Framework 版本。

但为什么是 IDE?您可以为每个项目设置目标框架版本。是因为编译器/调试器问题吗?

我们计划从 AutoCAD 2012 升级到 AutoCAD 2016。所以我们需要一个新的 IDE 来安装我们的插件,并且更喜欢最新的 Visual Studio 版本 (2015)

Aug*_*ves 5

这个严格的 VS 版本仅适用于 ObjectARX/C++。

对于 .NET,您只需要合适的框架版本进行开发,或者,如果您已经有一个 DLL,那么遗留兼容性应该可以工作。但有一个例外,见下文:

  1. AutoCAD 2007 - 2012:使用AcDbMgdAcMgd编译您的代码,您的代码应该适用于所有这些版本(除非您使用的功能在您正在执行的版本上不可用)
  2. AutoCAD 2013 - 2017:这个“新周期”也需要引用AcCoreMgd,因此您需要一个单独编译的 DLL

对于 C++,有一个关于装饰名称的额外要求,VS 使用它编译代码。因此您可以调整工具集,但需要安装特定版本来编译您的代码。

我可能会说,如果您使用 ActiveX/COM,您会有一些不同的担忧:32 位和 64 位以及 AutoCAD 主要版本之间的引用不同,因此更容易为每个版本/平台使用后期绑定或编译不同的 DLL .