前言
准备工作虽然说起来不复杂,但是做起来却很繁琐。毕竟这里涉及到软件的不同版本,objectarx也并不完美,有着各种安装的BUG,所以实际要完成安装调试是非常耗时间的。
1.各版本的cad、objectarx和visualstdio的对应关系
网上资料很多,还是在这里列出来,方便查询。
ObjectARX开发版本对照表 | ||||||||
序号 | CAD版本 | 版本号 | 二进制兼容版本 | .net框架版本 | ObjectARX开发环境 | VC版本号 | ||
MAC OS平台 | WINDOWS平台 | VC版本 | _MSC_VER | |||||
1 | R14 | R14.0 | R14 | Visual C++ 5.0 | VC++ 5.0 | 1100 | ||
2 | AutoCAD 2000 | R15.0 | AutoCAD 2000 | N/A | N/A | Microsoft Visual Studio 6 (Service Pack 2) | VC++ 6.0 | 1200 |
3 | AutoCAD 2000i | R15.1 | AutoCAD 2000i AutoCAD 2000 | N/A | N/A | Microsoft Visual Studio 6 (Service Pack 2) | ||
4 | AutoCAD 2002 | R15.2 | AutoCAD 2002 AutoCAD 2000i AutoCAD 2000 | N/A | N/A | Microsoft Visual Studio 6 (Service Pack 2) | ||
5 | AutoCAD 2004 | R16.0 | AutoCAD 2004 | N/A | Microsoft Visual Studio .NET 2002 | VC++ 7.0 | 1300 | |
6 | AutoCAD 2005 | R16.1 | AutoCAD 2005 AutoCAD 2004 | 1.1 | N/A | Microsoft Visual Studio .NET 2002 Microsoft Visual Studio .NET 2003 | VC++ 7.0 VC++ 7.1 | 1300 1310 |
7 | AutoCAD 2006 | R16.2 | AutoCAD 2006 AutoCAD 2005 AutoCAD 2004 | 1.1 SP1 | N/A | |||
8 | AutoCAD 2007 | R17.0 | AutoCAD 2007 | 2.0 | N/A | Microsoft Visual Studio .NET 2005 | VC++8.0 | 1400 |
9 | AutoCAD 2008 | R17.1 | AutoCAD 2008 AutoCAD 2007 | 2.0 | N/A | Microsoft Visual Studio .NET 2005 | ||
10 | AutoCAD 2009 | R17.2 | AutoCAD 2009 AutoCAD 2008 AutoCAD 2007 | 3.0 | N/A | Microsoft Visual Studio .NET 2005 | ||
11 | AutoCAD 2010 | R18.0 | AutoCAD 2010 | 3.51 SP1 | N/A | Microsoft Visual Studio 2008 (SP1) | VC++ 9.0 | 1500 |
12 | AutoCAD 2011 | R18.1 | AutoCAD 2011 AutoCAD 2010 | 3.51 SP1 | Mac OS X (10.6.4+) Xcode: 3.2.5 Qt: 4.6.3 Patched/4.6.3.1 Patched (SP1) Mono: 2.6.7_3 | |||
13 | AutoCAD 2012 | R18.2 | AutoCAD 2012 AutoCAD 2011 AutoCAD 2010 | 3.51 SP1 | Mac OS X(10.6.4+) Xcode: 3.2.5 Qt: 4.7.2 Patched Mono: 2.10.2_5 | |||
14 | AutoCAD 2013 | R19.0 | AutoCAD 2013 | 4.0 | Mac OS X(10.8) Xcode: 4.4 Qt: 4.8.1 Mono: 2.10.5 Mac OS X (10.7.3) Xcode: 4.3.2+ Qt: 4.8.1 Mono: 2.10.5 | Microsoft Visual Studio 2010 / (SP1) | VC++ 10.0 | 1600 |
15 | AutoCAD 2014 | R19.1 | AutoCAD 2014 | 4.0 | Mac OS X (10.8) Xcode: 4.4 Qt: 4.8.2 Mono: 2.10.5 | |||
16 | AutoCAD 2015 | R20.0 | AutoCAD 2015 | 4.5 | Mac OS X (10.9) Xcode: 5.0.2 Qt: 4.8.5 Mono: 3.2.7 | Microsoft Visual Studio 2012 (Update 4) | VC++ 11.0 | 1700 |
17 | AutoCAD 2016 | R20.1 | AutoCAD 2016 | 4.5 | Mac OS X(10.9/10.10) Xcode: 5.0.2 Qt: 4.8.5 Mono: 3.2.7 | Microsoft Visual Studio 2012 (Update 4) Microsoft Visual Studio 2013 | VC++ 11.0 VC++ 12.0 | 1700 1800 |
18 | AutoCAD 2017 | R21.0 | AutoCAD 2017 | 4.6 | Mac OS X (10.10orlater) Xcode: 7.1 Qt: 4.8.5 Mono: 4.2.1 | Microsoft Visual Studio 2015 (Update 1) | VC++ 14.0 | 1900 |
19 | AutoCAD 2018 | R22.0 | AutoCAD 2018 | 4.6 | Mac OS (10.12 or later) Xcode: 8.3.2 Mono: 4.6.2.7 | Microsoft Visual Studio 2015 (Update 3) | ||
20 | AutoCAD 2019 | R23.0 | AutoCAD 2019 | 4.7 | N/A | Microsoft Visual Studio 2017 (Update 2) | VC++ 14.1 |
2.objectarx安装的常见错误
以objectarx2013安装为例,objectarx2013的VS2010的嵌入插件objectarx_wizards_2013和以前版本的objectarx不同,是一个独立的安装包,不在ObjectARX_2013_Win_64_and_32Bit.exe文件里,需要到autodesk的网站上下载。所以objectarx2013实际上有3个文件要下,分别是:
ObjectARX_2013_Win_64_and_32Bit.exe;
ObjectARXWizards.msi;
ObjectARX_2013_Documentation.exe。
2.1 常见错误1
安装完成后,在Visual Studio中使用Wizard提供的模版新建工程时,总是提示“编码不正确,无法创建工程”。解决问题的方法:C:\Program Files (x86)\Autodesk\ObjectARX2013 Wizards\Autodesk.arx-2013.props
C:\Program Files (x86)\Autodesk\ObjectARX 2013 Wizards\ArxAppWiz\Templates\1033\Autodesk.arx-2013.props
这两个文件中的最开头两个字符确实有问题,将第一行改为 “<?xml version="1.0"encoding="utf-8"?>" 即可正确创建工程。
2.2 常见错误2
解决上述问题后出现如下问题,未找到导入的项目"C:\ObjectARX\inc\arx.props"。请确认声明中的路径正确,且磁盘上存在该文件。……解决方案:将Object ARX 2013文件夹下的所有文件复制到C:\ObjectARX\中,随后将可以完美创建项目。
3.关于Objectarx MFC support插件 按钮没有的问题
自Objectarx2012后该插件按钮已经取消了。如果想使用Objectarx中的AcUi类库来构建对话框,可以使用Objectarx MFC support wizard。 在解决方案管理器窗口下,右键工程名,点击添加类,即可出现MFC SUPPORT CLASS WIZARD选项,Objectarx2013是利用该向导来添加AcUi类库。 但需注意,直接添加会出现ObjectARX MFC Class Wizard中DialogID创建失败的错误。解决的方法是:首先找到
C:\Program Files(x86)\Autodesk\ObjectARX Wizards for AutoCAD 2012\ArxWizMFCSupport\HTML\1033或
C:\Program Files\Autodesk\ObjectARX Wizards for AutoCAD 2012\ArxWizMFCSupport\HTML\1033
右键打开default.htm文件并查找classid将CLASSID=“CLSID:5A0C78A8-07D8-48cd-B1DD-BA9752C79F1C”>
换成CLASSID=“CLSID:19db9a07-5ca3-461e-9e7b-b370c91aba2e”>
保存文件,如果是win8 win10 可能要先保存到桌面或者其他位置,再复制回去覆盖(后面保存均相同)。
然后我们继续打开
C:\Program Files\Autodesk\ObjectARX Wizards for AutoCAD 2012\ArxMemVariableWiz\HTML\1033
或C:\Program Files(x86)\Autodesk\ObjectARX Wizards for AutoCAD 2012\ArxMemVariableWiz\HTML\1033
右键打开default.htm文件并查找classid将CLASSID=“CLSID:5A0C78A8-07D8-48cd-B1DD-BA9752C79F1C”>
换成CLASSID=“CLSID:19db9a07-5ca3-461e-9e7b-b370c91aba2e”>
保存。。
再继续打开
C:\Program Files\Autodesk\ObjectARX Wizards for AutoCAD 2012\ArxAppWiz\Scripts\1033
或者C:\Program Files(x86)\Autodesk\ObjectARX Wizards for AutoCAD 2012\ArxAppWiz\Scripts\1033
右键打开default.js 按Ctrl+End键盘鼠标拖动到最下方
最最后一行开始倒数第三行,找到var szPath =“c:\Program Files\Autodesk\AutoCAD 2011\” ;这类似这句
将这个地址改成你的cad安装目录如 “D:\Program Files\Autodesk\AutoCAD 2013\” 注意路径的双斜线。
在ObjectARX2013的修改过程中,只要执行第一步的修改就可以了。