本人以前采用VB6调用AutoCAD 2004进行二次开发(ActiveX模式),感觉运行速度不快,特别是有一个问题:程序运行过程中用户不能有任何CAD的操作。例如,当程序运行时如果用户使用鼠标对CAD进行缩放或点击时,程序会挂起或者崩溃。 最近想针对AutoCAD进行一下二次开发,可能程序的运算工作量会比较大,因此比较在乎运行速度的问题。开发时会使用VB.net 2008针对AutoCAD 2008进行,同时需要兼容AutoCAD 2004版本。 在论坛上看到针对AutoCAD开发的工具有很多,很多人反映使用.NET开发是今后的趋势,下载了一些资料和例子初步学习了一下,存在下面的疑惑(本人只关注采用VB.net编程这一方面): 1. 使用VB.net语言,在二次开发手段上好像可以采用ActiveX模式、AutoCAD .NET API和ObjectARX Managed Wrapper Classes。我现在的目标放在AutoCAD .NET API和ObjectARX这两个上面。使用ObjectARX Managed Wrapper Classes 时需要引用acdbmgd.dll和acmgd.dll这两个DLL。但我下载的Autodesk官网ObjectArx2010 Sdk的.Net API例子中也是引用了上述两个DLL。因此问题是:使用VB.net语言利用AutoCAD .NET API和ObjectARX Managed Wrapper Classes 二次开发到底有什么区别?是不是同一个东西啊? 2. 网上资料说使用AutoCAD直到2005版本才开始支持VB.net语言+ObjectARX进行二次开发,是否如此?如果是的话,那岂不是我使用vb.net+ObjectARX编的程序不支持AutoCAD 2004了。很是郁闷! 3. 如果实在不行,采用VB.net二次开发又要同时兼容AutoCAD 2008 和2004版本,是不是还得退回到ActiveX模式? 4. 又看到有“.NetARX”,这又是什么东西啊?是可以使用VB.net编程的ObjectArx的缩写? 对一些概念不是很懂,也许问题有些凌乱,很抱歉! 非常期待并感谢各位的指点!!!
|