分类: ObjectArx.net2010-09-14 16:52 4203人阅读 评论(7) 收藏 举报
 

目录(?)[+]

 

1.开发基本资料准备

用Vs2010进行Autocad 2010开发,首先下载ObjectArx 2010 SDK。

http://download.autodesk.com/akdlm/esd/dlm/objectarx/ObjectARX_2010_Win_64_and_32Bit.exe

2.使用Visual Studio .NET来创建一个新的类库工程

(1)建立类库项目

          启动Visual Studio.NET,选择”文件>新建>工程”(File> New> Project)。在新建工程对话框中选择工程类型为”Visual C#工程”,然后选择“windows”>”类库”模板,点击确定按钮来创建工程。

(2)添加引用

在项目引用中添加acdbmgd.dll和acmgd.dll,默认位置在c:/ObjectARX 2010/inc-win32下。

添加引用后,展开引用,单击AcDbMgd和AcMgd,将其属性复制到本地分别改为False,否则可能会出现编译错误。

AutoCAD 2010 采用 .Net Framework 3.5 版本,Vs 2010 创建默认工程采用.Net Framework 4.0 版本,必须将目标框架改为Net Framework 3.5 。修改方法:菜单 项目>ClassLibrary1属性>应用程序>框架属性,选择 .Net Framework 3.5 就可以了。

(3) 导入命名空间。

如:

using Autodesk.AutoCAD.ApplicationServices;

using Autodesk.AutoCAD.EditorInput;

using Autodesk.AutoCAD.Runtime;

(4)  加入自定义命令

新建HelloWorld的自定义AutoCAD 命令,可以这么做:

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using Autodesk.AutoCAD.ApplicationServices;
  6. using Autodesk.AutoCAD.EditorInput;
  7. using Autodesk.AutoCAD.Runtime;
  8. namespace ClassLibrary1
  9. {
  10. public class Class1
  11. {
  12. [CommandMethod("HelloWorld")]
  13. public void HelloWorld()
  14. {
  15. Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;
  16. ed.WriteMessage("Hello World");
  17. }
  18. }
  19. }

该命令在当前命令行显示 Hello World。

3. 编译和调试

(1)手动加载

点击生成>生成解决方案,编译完成。

要加载生成的DLL文件,必须用Netload命令。在AutoCAD命令行输入Netload,选择 ClassLibrary1.dll 就可以加载了。

在命令行输入 HelloWorld 命令,就可以看到其执行效果了。

Netload加载的程序不能卸载,要想再调试只能退出Autocad,然后重新编译、加载。

(2)自动加载

菜单 项目>ClassLibrary1属性>调试>启动操作,选择启动外部程序,程序名为AutoCAD.exe ,默认安装位置在c:/Program Files/AutoCAD 2010/acad.exe;命令行参数设置  /nologo /b "d:/ClassLibrary1/ClassLibrary1/bin/debug/start.scr" 。

start.scr 文件是自己编写的autocad运行脚本文件,该文件是文本文件,添加一行文本:netload "d:/ClassLibrary1/ClassLibrary1/bin/debug/ ClassLibrary1.dll"

这样我们就可以直接运行调试了。

(3)调试

按照以上步骤运行后,不支持断点调试,我们还应修改acad.exe.config.xml文件,该文件在c:/Program Files/AutoCAD 2010/下,增加一行 <supportedRuntime version="v2.0.50727"/>内容。修改后的acad.exe.config.xml的内容如下:

<configuration>

<startup>

<supportedRuntime version="v2.0.50727"/>

</startup>

<!--All assemblies in AutoCAD are fully trusted so there's no point generating publisher evidence-->

<runtime>

<generatePublisherEvidence enabled="false"/>

</runtime>

</configuration>

Autocad 2010+ObjectArx 2010 +Vs2010 的.net 开发设置(转)的更多相关文章

  1. C#/AutoCAD 2018/ObjectArx/二次开发添加圆对象的的例子(五)

    C#/AutoCAD 2018/ObjectArx/二次开发添加圆对象的的例子(五) 1.创建一个图形对象的步骤如下见上一篇博客(三)2.添加删除实体的工具函数见上一篇博客(四) 3.添加圆的例子(完 ...

  2. opencv 2.4.9+pcl 1.6+vs2010+win7 32开发环境配置

    最近在做图像方面的开发,需要对软件开发平台进行配置,我查找了关于这些方面的内容,由于软件版本很多,每个人的开发平台又不一样所以在对平台进行搭建过程中遇到了很多问题,下面我将我搭建平台的流程做一个记录. ...

  3. 使用vs2010进行驱动开发的补充

    看到前面的一篇文章 ,在这里http://www.cnblogs.com/wubiyu/archive/2010/05/17/1737420.html vs2010配置驱动开发基本上按照如上所说就差不 ...

  4. VS2010配置OpenGL开发环境

    OpenGL(Open Graphics Library)是一个跨编程语言.跨平台的专业图形程序接口.OpenGL是SGI公司开发的一套计算机图形处理系统,是图形硬件的软件接口,任何一个OpenGL应 ...

  5. 分享微软官方Demo用的SharePoint 2010, Exchange 2010, Lync 2010虚拟机

    微软官方有一套专门用于SharePoint 2010, Exchange 2010 Demo的虚拟机:SharePoint 2010: Information Worker Demonstration ...

  6. VS2010配置OpenGL开发环境(转)

    OpenGL(Open Graphics Library)是一个跨编程语言.跨平台的专业图形程序接口.OpenGL是SGI公司开发的一套计算机图形处理系统,是图形硬件的软件接口,任何一个OpenGL应 ...

  7. 使用.NET开发AutoCAD——C#/AutoCAD 2018/ObjectArx/二次开发入门(二)

    1.开发环境配置: (1)安装AutoCAD2018: (2)安装VS2015: (3)安装ObjectARX 2018类库: (4)安装ObjectARX 2018 .NET开发向导(ObjectA ...

  8. VC++开发AutoCAD 2018/objectARX 用向导新建项目无法新建的问题

    话说笔者最近想用新机子上装的AutoCAD ObjectARX 2018来进行二次开发,兴致勃勃安装了ARX API和向导, 然后打开VS2015,新建项目,无法新建. 折腾了一下,还是没有解决,后面 ...

  9. C#/AutoCAD 2018/ObjectArx/二次开发添加删除实体的工具函数(四)

    1.添加删除实体 C# ObjectARX二次开发添加删除实体是非常容易主要代码如下: 添加实体: objId = btr.AppendEntity(entity); trans.AddNewlyCr ...

随机推荐

  1. bzoj1612 / P2419 [USACO08JAN]牛大赛Cow Contest(Floyd)

    P2419 [USACO08JAN]牛大赛Cow Contest Floyd不仅可以算最短路,还可以处理点之间的关系. 跑一遍Floyd,处理出每个点之间是否有直接或间接的关系. 如果某个点和其他$n ...

  2. P2831 愤怒的小鸟(状压dp)

    P2831 愤怒的小鸟 我们先预处理出每个猪两两之间(设为$u,v$)和原点三点确定的抛物线(当两只猪横坐标相等时显然无解) 处理出$u,v$确定的抛物线一共可以经过多少点,记为$lines[u][v ...

  3. CSS3:{*zoom:1;}作用

    CSS3:{*zoom:1;}作用 zoom:1的常见作用: zoom是IE专用属性,firefox等是不支持的.它的本来作用是设置或检索对象的缩放比例,但这作用几乎用不到. 可以让网页实现IE7中的 ...

  4. target='_blank' 安全漏洞

    有关 target="_blank" 的安全缺陷 可能大家在写网页的时候经常给超链接加个属性 target="_blank",意思就是在浏览器新的窗口打开此超链 ...

  5. Kali2018.1

    目录 制作U盘启动盘 安装 Kali Linux 之后的事 更新源 配置 Zsh 配置 Vim 修改 Firefox 语言为中文 安装 Gnome 扩展 美化 安装 Google 拼音输入法 安装常用 ...

  6. Abstract Factory(抽象工厂)

    意图: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. 适用性: 一个系统要独立于它的产品的创建.组合和表示时. 一个系统要由多个产品系列中的一个来配置时. 当你要强调一系列相关 ...

  7. [osgearth]osgearth原数据获取途径

    Help us add useful sources of Free data to this list. Raster data ReadyMap.org - Free 15m imagery, e ...

  8. postgresql中终止正在执行的SQL语句

    在Linux系统中可以使用kill [pid]的方式强制删除进程,但对于修改数据表的语句来说,这样可能导致postgresql进入recovery mode,这样会导致锁表. Postgresql的运 ...

  9. 资源管理器总是生成 avi,mpeg的预览图

    感觉非常讨厌. 图片可以直接显示,但是视频的预览图感觉很不舒服. 查了一下 , 用ShellExView 禁用一下 MF XXXX Property Handler 就可以了. 官网最下面可以下载: ...

  10. 如何以Root权限在Pycharm上Run、Debug

    Pycharm官网提问:https://intellij-support.jetbrains.com/hc/en-us/community/posts/206587695-How-to-run-deb ...