明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4797|回复: 6

请问当前最经典的ObjectARX开发环境组合是?

[复制链接]
发表于 2010-5-3 11:02:00 | 显示全部楼层 |阅读模式

本人准备学习CAD基于ObjectARX的二次开发,但不知道选择怎样的开发环境?

望高手指点》》谢谢!!!!!

发表于 2010-5-18 14:02:00 | 显示全部楼层

最近任务需要用arx开发,但版本问题困扰了我很久。在网上找了很多资料,拿出来大家分享。不同版本的AutoCAD的ARX程序不是二进制兼容的,需要使用不同版本的ObjectARX开发包,以及不同版本的编译器。ObjectARX都只能在VisualStudio下编译,其中ARX2006版之前的只能使用C++语言,之后的可以使用C++、VB.net和C#三种语言。
        AutoCAD系列软件,在目前市场上的主要版本有R12、R14、2000、2000i、2002、2004、2005、2006和2007。其中2000、2002、2002i、2004、2005、2006、2007的内部版本号分别是R15、R15.0.6、R15.0.7、R16、R16.1,R16.2、R17从内部版本号可以更清楚的知道这些版本之间的关系。CAD和ObjectARX开发包版本及编译器的对应关系基本如下表所示:


CAD版本                                ObjectARX版本                  VS版本
CAD R12                                ARX 1                          VC 2
CAD R14                                ARX 202                        VC 4.2
CAD2000/2002即R15、R15.0.7             ObjectARX 2002                 VC 6.0
CAD2004 即R16                          ObjectARX 2004                 VC 2002(即7.0)
CAD2005 即R16.1                        ObjectARX 2005                 VC 2003(即7.1)
CAD2006 即R16.2                        ObjectARX 2006                 VS 2003(即7.1)
CAD2007 即R17                          ObjectARX 2007                 VS 2005(即8.0)

    如果不使用到新特性或已废除的特性,那么同样功能的程序,源代码可以不加修改或少量修改,但必须在不同平台使用不同的开发包重新编译,否则要么无法生成,要么虽然勉强生成但无法载入。当然同一主版本号的CAD,低版本的可以在高版本中载入,如2000的ARX程序可以在2002中载入运行,但稳定性不能完全确保。

另外开发环境的对应也有一些说道。

比较经典的组合:ObjectARX 2002 + AutoCAD 2002 + VC6.0 + Assist 6.0 + VSS 6.0C

目前较稳定的组合:ObjectARX 2004/2005 + AutoCAD 2004/2005 + VC.Net 2002
不兼容的组合(一):ObjectARX 2005 + AutoCAD 2004/2005 + VC.Net 2003,需调用或验证大量VC7.0的库,否则编译不过。解决方案:拷贝VC2002安装目录下/VC7\atlmfc\lib下类似*70*的文件到VC2003下,主要有:mfc70.lib、 mfc70d.lib、mfc70u.lib、mfc70ud.lib mfcs70.lib、mfcs70.pdb mfcs70d.lib、mfcs70d.pdb mfcs70u.lib、mfcs70u.pdb、mfcs70ud.lib、mfcs70ud.pdb
不兼容的组合(二):ObjectARX 2006 + AutoCAD 2006 + VC.Net 2003 + Assist X + VSS 6.0D 同样需要VC7.0的库,简要方法:(1) 复制VC2003的相关库文件如:mfc71.lib、mfcs71.lib并改名为类似*70*的文件如: mfc70.lib、mfcs70.lib;(2) 拷贝VC2002的相关库文件到VC2003的对应安装目录下。:可以解决!采用改名的方法,编译通过,加载时不要用appload(命令行) or "load application"(英文版菜单) or “加载应用程序”(中文版菜单),而在命令行输入"ARX", 接下来输入“Load”进行arx文件加载(忽略警告),在VC7.1+Autodesk Mechanical Desktop 2006(基于AutoCAD 2006)平台上实验成功,如果避免使用MFC相关功能的话,兼容性应该还是可以的。原文(作者lzljy)见<http://www.objectarx.net/bbs/archiver/?tid-69.html>

使用C#的组合:ObjectARX 2006 + AutoCAD 2006 + V#.Net 2003。.Net ARX编程组合。编译的程序文件名为.dll,在AutoCAD中的加载命令为:NetLoad,但没有?载命令,只有关闭AutoCAD。调用ARX函数时using 相关命名空间,类似VC里include头文件。
最新的组合:ObjectARX 2007 + AutoCAD 2007 + VC.Net 2005 +Visual Assist v10.2.1442.0 + Visual SourceSafe 2005

发表于 2010-5-18 20:20:00 | 显示全部楼层
AUCAD2010 +  OBjectarx2010+ vs2008
发表于 2010-8-26 15:08:00 | 显示全部楼层

请问3楼的大虾,您说的组合和这个组合CAD2008+ARX2008+VS2005的设置有什么不同。谢谢

 

发表于 2010-12-13 20:04:33 | 显示全部楼层
感谢2楼详细说明,我也想学ARX。正在进行准备工作。
发表于 2011-1-13 10:36:49 | 显示全部楼层
精彩!
发表于 2011-5-28 14:11:22 | 显示全部楼层
AUCAD2010 +  OBjectarx2010+ vs2008
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-29 04:45 , Processed in 0.188201 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表