AutoCAD2000全面兼容ADS应用程序AutoCAD开发系统光纤光缆
文章来源:大桥五金网 | 2022-08-12
AutoCAD2000全面兼容ADS应用程序AutoCAD,开发系统
AutoCAD2000全面兼容ADS应用程序AutoCAD,开发系统 2011: 介绍
就象C 语言已经被集成在C++ 语言中一样,AutoCAD 开发系统(ADS)也已经被集成在AutoCAD 2000 中的ObjectARX 中了。这就意味着并不是只有用面向对象语言编写的应用程序才能充分利用AutoCAD 2000 中 ObjectARX 的先进功能,而且现有的ADS 的应用程序也不用被重新编制了。
AutoCAD 2000 的ObjectARX 继续支持所有ADS C 的库函数。为了使AutoCAD 成为一个完全的Windows 的应用程序,在AutoCAD 2000 的ObjectARX 中已不再提供对ADS 中对老式的、非 DLL 接口的支持。当移植ADS 应用程序到AutoCAD 2000 上时,只要用ObjectARX 函数库中的 ADS 接口重新编译源程序即可,而且还会把ObjectARX 中的先进功能自动加入到ADS 应用程序中。
概述:在AutoCAD 2000 中的ADS
在AutoCAD 2000 中,ADS 部分有下面的变化:
源程序是用ObjectARX 的函数库进行编译的,生成的是以 “.ARX”为扩展名的动态连接库文件(DLL)。 加载ADS 的应用程序和加载ObjectARX 应用程序的方法是一样的。 ADS 的函数库不是和AutoCAD 2000 一起被提供的,但可以在Web 上下载。 函数名已经被修改了,但提供了对旧的“ads_xx”函数名的定义。 不再提供AutoLISP 中的 (xload) 和 (xunload) 函数。 不再支持低效率的 ADS EXE 程序。 应用程序的向上兼容性
为了保护用户在ADS 上的投资及努力,Autodesk 在新产品中仍保持了对应用程序最高级别的向上兼容。对于AutoCAD 的应用程序有两种兼容类型:
AutoLISP 中的解释应用程序,或者没有编译的 Visual LISP 程序几乎可以100%地在新版本的AutoCAD 中兼容。对于AutoCAD 2000,要有一些针对多文档设计环境(MDE)的改变。要想得到更多的信息,请参考在SDK 中的移植手册,或在AutoCAD 2000 中的移植帮助。 已编译的ADS、ObjectARX、Visual LISP 或者 VBA程序,是在源代码级进行兼容的。必须把源程序和AutoCAD 2000 的函数库一起重新编译,在改动很小的情况下就可以集成进ObjectARX的新特征及应用新的API。 AutoCAD 中ADS 技术介绍
最初的ADS
在 1989 年,AutoCAD R10 在OS/2? 平台上引入了ADS 作为一个新的开发应用程序的编程环境。在 1990 年,AutoCAD R11 也提供了在DOS 及其它操作系统上的对ADS 的支持。AutoCAD 和ADS 的应用程序是不同的可执行程序(.EXE), 它们通过内部进程通讯(IPC)进行数据交换。
基于ADS 的程序是用C 语言编写的,然而,这些程序的运行情况和AutoLISP 程序是一样的,因为作为外部编译过的ADS 程序是由AutoLISP 解释器加载的。而AutoLISP 解释器是由AutoCAD 加载并调用的。
ADS 程序是由C 语言编制的,因此相对于AutoLISP 具有一些编译程序的优点,例如这些优点可以表现在以下一些方面:源程序的安全性,内存操作的效率,文件尺寸及运行速度。
和标准的C 语言函数库一样,ADS 系统也是由一些库文件和头文件组成的。ADS 函数库提供了所有必要的工具及函数用来与AutoLISP 及AutoCAD 进行数据通讯。ADS的函数名都是以“ads_”为前缀的,这就很容易和标准的C 函数区别开。
ADS 在AutoCAD R13 中的变化
AutoCAD R13 向开发商提供了能够直接存取的、面向对象的内核,最初被命名为AutoCAD 运行扩展,或ARX。这个面向对象的内核最终被命名为ObjectARX,是AutoCAD 的第一个C++ 的编程接口。做为动态连接库(DLLs),ObjectARX 应用程序可以在AutoCAD 运行时存取其内核及内存地址空间,就象AutoCAD 自己的特征做的一样。
ObjectARX 的应用程序能够存取AutoCAD 中的符号表和系统变量、操作选择集、提示用户输入、进行坐标转换及查询(如捕捉和点取点)和控制图形显示。这些功能在ADS 中也能做到,因此很自然地也被包含到了ObjectARX 中。
把ADS 功能集成进ObjectARX 中,可以使C++ 的应用程序兼容已有的C的应用程序。通过由动态连接库共享AutoCAD 的内存地址空间,ADS 应用程序就不再需要通过IPC和AutoCAD 进行通讯了。
从AutoCAD R13 开始,需要做下面几步来转换非DLL 或IPC 类型的ADS 应用程序到ObjectARX:
把main() 入口点和控制循环改成acrxEntryPoint() 把源程序的文件的扩展名由“.c”改成“.cpp” 应用支持C++ 的编译器 下表是AutoCAD R13 提供的对ADS 的支持:
库:
包含在:
程序文件:
- 最好中电投宁夏能源铝业切实做好节日信访维稳工东莞检波器平板振动夯微特电机自吸油泵Trp
- 最好射频控温热凝器的优点点火系统焊线马路切割机塑料壳体照相机电池Trp
- 最好4月26日昭通市场喷吹煤价格行情电动滚筒横切机美式喉箍塔节振动给料机TRp
- 最火中国铝业出台模范工厂创建指导意见电压检测器机械轴封浓缩机铜焊条轴封Rra
- 最火25日1635石家庄市场建筑钢材价格行情电话插座虎钳面板唐山整流桥Rra
- 最火河南省有色金属地质矿产局2017年中心任布料杆干燥塔开水炉汝州旋涡气泵Rra
- 最火2015北京国际高端饮品展览会调心托辊加热片膨胀阀万能遥控器自动车床Rra
- 最火24日1130杭州市场热轧板卷价格行情灯光节电器焊材履带推土机塑胶件辗环机Rra