AutoCAD .NET二次开发(一)
其他话不多说,直接进入主题,既然是二次开发,当然是用CAD平台已经封装好了很多类,我们需要熟悉和使用它们。常用的AutoCAD .NET API的四个主要DLL文件是:
名称 |
作用 |
备注 |
AcDbMgd.dll |
处理图形文件中存储的对象 |
|
AcMgd.dll |
处理AutoCAD应用程序和用户接口 |
|
AcCui.dll |
处理自定义文件 |
|
AcCoreMgd.dll |
处理编辑器、发布与打印、定义AutoLISP命令和函数 |
AutoCAD 2014版 |
我们现在不必去深究这些类库的构造,这四个引用 的位置可以在CAD的安装路径下找到,(<盘符>:\program Files\AutoCAD 2013),先来一个测试实例:
新建类库项目,添加AcDbMgd和AcMgd引用,将引用的"复制本地"属性设置为False
设置项目属性中"调试"启动外部CAD程序。
添加测试代码,新建一个DWG文件。
启动调用,程序将打开Cad2013,在命令行中输入"netload",加载生成的dll文件,输入命令"NEWDWG"进行测试。
在调试过程中遇到的主要问题有:
问题一:未能找到类型或命名空间名称"CommandMethod"(是否缺少 using 指令或程序集引用?)
解决:如果是13以上的版本,除了添加AcDbMgd和AcMgd引用外,还应添加accoremgd引用,然后就是using了。
问题二:特性"CommandMethod"对此声明类型无效。它只对"method"声明有效。
解决:CommandMethod语句之后的有效行必定要是一个函数。
问题三:程序集生成 -- 引用的程序集"accoremgd.dll"针对其他处理器
解决:操作系统版本问题,将目标平台改为x64即可。
问题四:netload加载时错误: 未能完成程序集的安装(hr = 0x8007000b)。探测终止。
解决:Framework平台是4.0,其中的Linq引用有问题,不用它,去掉即可。
AutoCAD .NET二次开发(一)相关推荐
- autocad python二次开发_基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术
AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...
- 基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术
AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...
- lisp 焊缝_焊接领域中 AutoCAD的二次开发
焊接领域中 AutoCAD 的二次开发 祁文军 ; 方建疆 ; 袁逸萍 ; 周建平 [摘 要] 应用 AutoCAD 已有的二次开发工具 :AutoLISP .块和形定义及菜单开发 对 CAD 在焊接 ...
- 利用C#进行AutoCAD的二次开发(转)
众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectArx,VBA,VLisp.但它们的优缺点是显而易见的:ObjectArx功能强大,编程效率高,但它的缺点是编程者必须掌握VC++, ...
- 利用C 进行AutoCAD的二次开发
利用C#进行AutoCAD的二次开发(一) 呵呵,把自己前在网上以表的文章放到这里. 利用C#进行AutoCAD的二次开发(一) 众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectA ...
- api arx autocad_[ARX]利用AutoCAD 2005.NET API进行AutoCAD的二次开发(一)
利用AutoCAD 2005.NET API进行AutoCAD的二次开发(一) --直线 大家好!从今天开始我向大家介绍如何利用AutoCAD 2005.NET API进行AutoCAD的二次开发.由 ...
- api arx autocad_【新提醒】[ARX]利用AutoCAD 2005.NET API进行AutoCAD的二次开发(一)
利用AutoCAD 2005.NET API进行AutoCAD的二次开发(一) --直线 大家好!从今天开始我向大家介绍如何利用AutoCAD 2005.NET API进行AutoCAD的二次开发.由 ...
- 利用C#进行AUTOCAD的二次开发
众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectArx,VBA,VLisp.但它们的优缺点是显而易见的:ObjectArx功能强大,编程效率高,但它的缺点是编程者必须掌握VC++, ...
- AutoCAD .Net 二次开发 VisualStudio 及 .Net Framework 选择
进行 AutoCAD.Net 二次开发,官方推荐的 VisualStudio 及 .Net Framework 的版本搭配如下: AutoCAD 2015.AutoCAD 2016 Microsoft ...
- 《深入浅出AutoCAD.NET二次开发》教程(含光盘)
<深入浅出AutoCAD.NET二次开发>教程(含光盘)-中国建筑工业出版社出版 一本系统介绍.NET环境二次开发AutoCAD的教程,适合工程技术人员作为入门读物也适合研发工程师作为工作 ...
最新文章
- 机器学习入门(15)— 全连接层与卷积层的区别、卷积神经网络结构、卷积运算、填充、卷积步幅、三维数据卷积、多维卷积核运算以及批处理
- 计算机应届生必读的 AI 入门经典书单
- php与js的关系,Php与Js的交互
- netty 进程挂起_这可能是目前最透彻的Netty原理架构解析
- 【kafka】kafka 中 消息 record 格式
- 11.1金山游戏开发笔试
- Python使用UDP协议打造在线时间服务器
- TeamViewer 13界面功能介绍
- 学习笔记_java8新特性
- vivado 开发教程(二) 使用IP集成器
- oracle 11g instantclient
- Http——Post上传文件并传递其他参数信息
- sparkStreaming算子之transform
- UART(Universal Asynchronous Receiver/Transmitter)
- 布袋除尘器过滤风速多少_布袋除尘器过滤风速一般多大
- WPF 设置属性“System.Windows.FrameworkElement.Style”时引发了异常
- 别人在你眼中是什么样,你就是什么样
- KRKR基础篇(一)
- 自动驾驶出租车(Robotaxi)商业化前景展望
- 错题-阅读理解-中心理解题1
热门文章
- javax.crypto.BadPaddingException: Blocktype ...
- gnuplot 使用时遇到的问题
- 数据结构笔记(十七)--矩阵的压缩存储
- 数据结构笔记(九)-- 单链队列
- php 输出tab_php实现读取和写入tab分割的文件
- 共享可写节包含重定位_周末去哪?来云浮!来乡村美食(番薯)节!
- qt 对话框位置如何确定_便利店如何确定收银台位置?
- python数字排序_python按照列表元素中的数字大小排序
- java 动态报表 sql,报表SQL
- delphi 获取webbrowser文本框id内数值_分布式 ID 生成策略