wangyao1052 发表于 2010-5-3 11:02:00

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

<p>本人准备学习CAD基于ObjectARX的二次开发,但不知道选择怎样的开发环境?</p><p>望高手指点》》谢谢!!!!!</p>

zlc1984 发表于 2010-5-18 14:02:00

<p>最近任务需要用arx开发,但版本问题困扰了我很久。在网上找了很多资料,拿出来大家分享。不同版本的AutoCAD的ARX程序不是二进制兼容的,需要使用不同版本的ObjectARX开发包,以及不同版本的编译器。ObjectARX都只能在VisualStudio下编译,其中ARX2006版之前的只能使用C++语言,之后的可以使用C++、VB.net和C#三种语言。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 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开发包版本及编译器的对应关系基本如下表所示: </p><p><br/>CAD版本&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ObjectARX版本&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VS版本 <br/>CAD R12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ARX 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VC 2 <br/>CAD R14&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ARX 202&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VC 4.2 <br/>CAD2000/2002即R15、R15.0.7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ObjectARX 2002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VC 6.0 <br/>CAD2004 即R16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ObjectARX 2004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VC 2002(即7.0) <br/>CAD2005 即R16.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ObjectARX 2005&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VC 2003(即7.1) <br/>CAD2006 即R16.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ObjectARX 2006&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VS 2003(即7.1) <br/>CAD2007 即R17&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ObjectARX 2007&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VS 2005(即8.0) </p><p>&nbsp;&nbsp;&nbsp; 如果不使用到新特性或已废除的特性,那么同样功能的程序,源代码可以不加修改或少量修改,但必须在不同平台使用不同的开发包重新编译,否则要么无法生成,要么虽然勉强生成但无法载入。当然同一主版本号的CAD,低版本的可以在高版本中载入,如2000的ARX程序可以在2002中载入运行,但稳定性不能完全确保。</p><p>另外开发环境的对应也有一些说道。 </p><p>比较经典的组合:ObjectARX 2002 + AutoCAD 2002 + VC6.0 + Assist 6.0 + VSS 6.0C </p><p>目前较稳定的组合:ObjectARX 2004/2005 + AutoCAD 2004/2005 + VC.Net 2002 <br/>不兼容的组合(一):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 <br/>不兼容的组合(二):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)见&lt;<a href="http://www.objectarx.net/bbs/archiver/?tid-69.html">http://www.objectarx.net/bbs/archiver/?tid-69.html</a>&gt;</p><p>使用C#的组合:ObjectARX 2006 + AutoCAD 2006 + V#.Net 2003。.Net ARX编程组合。编译的程序文件名为.dll,在AutoCAD中的加载命令为:NetLoad,但没有?载命令,只有关闭AutoCAD。调用ARX函数时using 相关命名空间,类似VC里include头文件。 <br/>最新的组合:ObjectARX 2007 + AutoCAD 2007 + VC.Net 2005 +Visual Assist v10.2.1442.0 + Visual SourceSafe 2005 </p>

love2002bj 发表于 2010-5-18 20:20:00

AUCAD2010 +OBjectarx2010+ vs2008

cdxzcz 发表于 2010-8-26 15:08:00

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

xgr 发表于 2010-12-13 20:04:33

感谢2楼详细说明,我也想学ARX。正在进行准备工作。

a5_a5 发表于 2011-1-13 10:36:49

精彩!

night1001 发表于 2011-5-28 14:11:22

AUCAD2010 +OBjectarx2010+ vs2008
页: [1]
查看完整版本: 请问当前最经典的ObjectARX开发环境组合是?