.NET开发CAD入门之Hello,.netcadhello


1、开发情况介绍

使用.NET开发CAD,在CAD2005之前的版本其实用的是ActiveX的方式开发的,并非真正意义上的.Net开发。从CAD2005开始支持了.NET对其的开发,在安装CAD2005之后的版本时都必须安装.NET Framework,证明CAD本身也有部分功能是用.NET开发出来的。

2、开发环境搭建

2.1:安装CAD的2005或更高版本。

2.2:安装.NET开发工具(例如VS)。

2.3:开发语言可以用属于.NET的C#、VB.NET、托管C++等。

3、使用VB.NET创建CAD开发的Hello项目

3.1:VS2005新建项目,选择VB-类库,指定名称及路径,勾选“创建解决方案的目录”。

3.2:项目添加引用,acdbmgd.dll和acmgd.dll,dll文件路径(C:\Program Files (x86)\AutoCAD 2007)

 


3.3:视图-对象浏览器,浏览引用的程序集所提供的的类

3.4:添加Hello命令

'要添加命令必须导入AutoCAD .NET托管封装类
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.EditorInput
Imports Autodesk.AutoCAD.Runtime

Public Class Class1
    '添加CAD命令,必须用 Runtime提供的CommandMethod属性
    <CommandMethod("Hello")> _
    Public Sub Hello() '当Hello命令在CAD中被执行,Hello()函数就会被调用
        '获取当前活动文档的Editor对象,也就是命令行
        Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor
        '调用Editor对象的WriteMessage函数在命令行上显示文本
        ed.WriteMessage("欢迎进入.NET开发AutoCAD的世界!")
        'CAD当前活动文档的Editor对象可以使用Application类来访问,创建Editor实例后,可以调用它的WriteMessage函数在命令行显示文本内容
    End Sub
End Class

3.5:调试

3.5.1:项目属性-调试-启动外部程序,找到相应的CAD版本

3.5.2:CAD装载托管程序,用NetLoad命令。在CAD命令行执行NetLoad命令,弹出【选择.NET程序集】的对话框,选择编译生成的Hello.dll文件。

3.5.3:在CAD命令行输入Hello并回车执行命令,会出现“未知命令”的提示。

因为什么之后研究,解决这个问题的方法是:停止调试,项目属性-引用 查看acdbmgd.dll和acmgd.dll的“复制本地”属性,将True修改为False。

再次调试即可。

 在此非常感谢《Auto CAD VBA & VB.NET开发 基础与实例教程》这本书对我的帮助。 

文章内容纯属个人的一点想法和感受,由于水平有限,难免会有错误和遗漏,欢迎批评指正(邮箱:wuwt917@foxmail.com)。
查看评论

相关内容

    暂无相关文章